function destroy (stream, suppress) {
	  if (isFsReadStream(stream)) {
	    destroyReadStream(stream);
	  } else if (isZlibStream(stream)) {
	    destroyZlibStream(stream);
	  } else if (hasDestroy(stream)) {
	    stream.destroy();
	  }

	  if (isEventEmitter(stream) && suppress) {
	    stream.removeAllListeners('error');
	    stream.addListener('error', noop);
	  }

	  return stream
	}
Destroy the given stream, and optionally suppress any future `error` events.

@param {object} stream
@param {boolean} suppress
@public