- [ ] Selective file downloading (mostly done) - [ ] Proper counting of how much is left, and how much is downloaded - [ ] Refactor "needed pieces" into a bitfield - [ ] Send bitfield at the start if I have something - [ ] use the "update_hash" function in piece checking - [ ] signaling when file is done someday: - [ ] cancellation