Optimization: avoid creating too much buffers, use the inherited torrentHash instead of separate byte buffer in every Piece object
pass SharedTorrent to the individual Piece objects, so a lot's of unnecessary data duplication can be avoided.