Bitswap rounds

This PR implements the first revision of 'Bitswap Rounds' as defined by @jbenet in issue #417 
I guess you could technically call it a data race, but each ledger is lock protected internally.