- Only pass `torrent.infoHash` to the Chunk Store constructor, instead
of the `Torrent`
  instance itself, to prevent accidental memory leaks of the `Torrent`
object by the
  store. (Open an issue if you were using other properties. They can be
re-added.)

- Non-fatal errors with a single torrent will be emitted at
`torrent.on('error')`. You
  should listen to this event. Previously, all torrent errors were also
emitted on
  `client.on('error')` and handling `torrent.on('error')` was optional.
This design is
  better since now it is possible to distinguish between fatal client
errors
  (`client.on('error')`) when the whole client becomes unusable versus
recoverable errors
  where only a single torrent fails (`torrent.on('error')`) but the
client can continue to
  be used. However, if there is no `torrent.on('error')` event, then
the error will be
  forwarded to `client.on('error')`. This prevents crashing the client
when the user
  only has a listener on the client, but it makes it impossible for
them to determine
  a client error versus a torrent error.

- Errors creating a torrent with `client.seed` are now emitted on the
returned `torrent`
  object instead of the client (unless there is no event listeners on
  `torrent.on('error')` as previously discussed). The torrent object is
now also destroyed
  automatically for the user, as was probably expected.

- If `client.get` is passed a `Torrent` instance, it now only returns
it if it is present
  in the client.