Bitswap rounds

This PR implements the first revision of 'Bitswap Rounds' as defined by @jbenet in issue #417 
it's not obvious what bools mean in parameter lists

```
type Type int
const (
  Normal = iota
  Revoke/Cancel
)
```