API is not chainable. client.add() returns torrent
opts.trackers will always be set
chain callbacks for torrent.destroy()
throw when torrent.select()ing an invalid range
use self
pass opts through to Readable constructor
clean up file stream, fixed one bug

non-stylistic changes are:

- removed !self._reading check which will never be used
- emit ‘critical’ event with the correct value for `end` which is end
piece, not length like in torrent-stream
destroy zalgo
code cleanup
fix bug in torrent.critical
add todos
explicitly return false in torrent._updateWire
storage.cancelBlock takes a byte offset
misc fixes
syntax error
move storage.read() to Piece class
update readme
code cleanup
simplify tasks on Client creation
ensure dht exists before calling listen