Added new functions for printing hashes, decoding/encoding torrent metadata and initializing peer manager
Added Piece Manager
Got the hash functions working and printing correctly
Got the connecting to the tracker and can now get peer lists
Added the Piece Manager initialization to Torrent Manager
Added a new startup file because there was some problems with calling exit_grace from Tracker Manager
Tracker Manager now returns a list of peers to Peer Manager. Peer Manager needs to parse the list.
added clases to piece manager. also creates piece list from hash values
The Tracker Manager now returns a list of peers to Peer Manager.
Peer Manager parses the peer list and puts them into a list of
strings where each string represents a peer in IP:PORT form
added more to the piecemanager. generates the piece q properly, added properties to the Piece class and now Piecemanager prints the status of the downloaded blocks
calling verify piece on itself now works. the file must be downloaded to verify it. hashes the data and checks against its own hash
Deleted the startup.py file. Now using the torrentStart.py file.
Made some more changes to the peer stuff
added more to piece manager
properly formatted and added API commenting
Deleted torrentStart.py and added all initialization stuff into TorrentManager.py
Can now connect to peers. It just connects and disconnects now because I haven't added the functionality to send messages. I'm working on that now.
competed adding pieces and blocks relative to the input size given. Handles non integer size/piece size
Piecemanager is now ready for merge. all verification works. Files have been successfully put into pieces and verified on the other side
Handshake is done
Can now receive messages but the message handles don't do anything they just print which message was received.
Merge commit '47fe4c1301fcdf026c65492e981db8415e350fd3' into bencode

Conflicts:
	resources/requirements.txt
	source/PieceManager.py

Resolved conflicts in requirements and PieceManager