implement pcRequest and onTorrentComplete callback
refactor the driver
minor: move some definitions closer to the use site
creating piece manager from existing torrent files.
minor refactoring