Reduce allocations

Store temporary buffers in a sync.Pool.

Create one httpGetter per peer when Set() is called so we don't
allocate a new one on each call PickPeer().
Merge pull request #28 from ryanslade/reduce-allocations

Reduce allocations