Bitswap rounds

This PR implements the first revision of 'Bitswap Rounds' as defined by @jbenet in issue #417 
this could have the effect of starving peers who end up at the end of the slice

(map iteration is non-deterministic, but it's not uniformly random)