add ability to find rarest piece
clean up and rename method
added smarter algorithm for choosing blocks to download