activePeers and routingTable out of sync

Add peer from activePeers to DHT routing table if not there to resync.

Refresh peers when receiving hello message

Changelog:
- When we receive a hello msg from a node then let's update the sidebar so we know we have new connected stores.

Fixed jslint issues.

I think this is some bullshit but ok :P

Transition to is not None

Reverse logic due to idiocy
Update missing peer logic

Before it was overwriting the activePeer with None if not found in the routing table so now there is a temporary routing_peer and if not found in the routing table it's added.
Fix bad logic
Merge pull request #714 from hoffmabc/feature-refresh-peers

Peer Management Updates
Put multisig tests in test folder.

* Format them as semi-unittests.
Merge pull request #763 from Renelvon/multisig_test

Put multisig tests in test folder.
Add check_port to network_util.

* Prefer ipv6 over ipv4 sockets.
* Accept variable timeout.
Refactor code in connection.py

* Drop unused PeerConnection.responses_received.
* Refactor PeerConnection.create_zmq_socket.
  * Allow it to raise an exception; we are catching it elsewhere.
  * Make it a private function.
* Refactor PeerConnection.send_raw.
  * Make failure cases stand out.
  * Do not compress until ready to send.
* Make failure cases stand out in CryptoPeerConnection.start_handshake.
* CryptoPeerConnection.check_port is now only a wrapper.
* Shorten CryptoPeerConnection.sign.
* Straighten CryptoPeerConnection.encrypt.
* Refactor CryptoPeerConnection.send.
  * Make failure cases stand out.
  * Guard against encrypt returning False.
* Remove PeerListener.cleanup_context. PeerListener no longer manages
  it own zmq.Context. Purge any references.
* Straighten PeerListener.listen.
* Remove unused import.
Use network_util utilities in DHT.
Use tornado.netutil to check for valid IPs.
Other style fixes.

* Abstract protocol in get_peer_url.
* Replace special-purpose code with check_port.
* Prefer importing modules than names.