*rework torrent_file
*rework tree
*tree_bencode
- -consider reworking bencode
+ -rework bencode
-snprintf return # of bytes needed to fill completely
+ -move to memcpy instead of snprintf (necessary because of binary data)
+ -rethink strategy for when out of available buffer space
-torrent_bencode_piece_layers
-need to sort (hash as key, file->piece_layers as value)
-consider adding piece layer hashmap to torrent struct
+ -add pieces field to session struct
+ -create piece struct
+ -pointer to file
+ -reference to position of piece in file
+ -void* for data
+ -filled jit, cached
-convert file sizes to uint64_t
+-refactor torrent
+ -split into multiple files
+ -add, init, free, etc.
+ -gonna need remove eventually
+-torrent_magnet()
-test
-bencode
-check that snprintf doesn't have weird behavior w/ \n and \0
-torrent
-torrent_file_info
+ -torrent_file_path
-expand add tests
+ -check results in hashmaps, trees, etc.
-file
-add sort/order tree files test
-integration test setup
--torrent_magnet()
-feed
-pull from previous iteration
-create feeds
-rebuild torrents+feeds
-networking
-port option
+ -tcp vs. udp differences?
+ -peer protocol
+ -piece selection
+ -throttling algorithms
-signal handler
-graceful shutdown
-watch threads