Peer Management Updates

Motivation:
- When sending messages to all connected peers (i.e. search) the peer may sometimes not be in your k-buckets. 
- Peers in the sidebar are not realtime synced at the moment. When we receive hello messages this is an apt time to dynamically add them to our list.

Changelog:
- Add contact to k-bucket if not found when iterating through activePeers
- Add hello peers to sidebar as we receive hellos.
It returns `None`, because it invokes `KBucket.getContact`, which does implicitly return `None` if it doesn't find the contact. See [here](https://github.com/OpenBazaar/OpenBazaar/blob/master/node/routingtable.py#L290) and [here](https://github.com/OpenBazaar/OpenBazaar/blob/master/node/kbucket.py#L63)