Added DHT, started magnet links and jumped down the rabbit hole of a major refactor.
Peer sort of working without need for torrent.
Removing comment
Extension handshake now working.
Extended messages sending with correct code.
Cleaning up client class.
Tweaks to bitfield
Use Uint8Array so by default all set to 0.
Adjusted toBuffer and fromArray so never go over the length of the bitfield (not always divisible by 8).
Metadata data requests coming back, need to handle mix of bencode tailed by binary data.
Handle metadata DATA response.
Use our own extension codes to figure out what message is.
Metadata downloading and being parsed.
Bumping version of dht.js to include advertising fix.
Split out create files logic and refactored to make clearer.
Filling the Torrent class back in, separating out download management and some setup tasks.  Still very much a work in progress.
A few loose ends.
Downloading from magnet link.  Not keeping track of downloaded pieces properly.
Reverted piece to pre-flushing changes.
Reverted to old piece that doesn't have flushing logic.  Updated to work with new file interface.  Removed busy logic from piece.
Added support for base32 encoded hash.
Updated README