entity.discard() is a performance optimization for those using this library to only read specific files from the tar. the parser looks at this property in the same manner it looks at _remaining to know when to skip calling write on the entity. an entity which discard() has been called on will not emit any more data events. discard() does not take any arguments and only sets the value of _discard to true. this saves 100ms or so for me just `stating` all of the files in the npm v 3 tar
- Fixes an issue where a truncated file will fail to emit 'close' or 'error'