Some Bitswap Refactoring

This PR Includes

-making a clarifying comment on why we are currently using AlwaysSendtoPeer as a BS strategy
-re-ordering functions so that types are above functions (looks cleaner)
-There was a TODO regarding using float64 in the strategy that could've resulted in a lock, avoiding the lock
-We were using nice as a word for how we view other peers, changed that to 'trusted'. We want to bitswap to be an auction that involves trust-the strategy should vary based on how trustworthy we are, and how much we trust the peer. 
the rand object we instantiate should be stored somewhere, possibily in the ledger. and should be constructed when the ledger is created.