Node negotiation error handling
Node negotiation error handling

- complete the version and SSL handshake first, and only then feed
  errors into the stream and close connection
- this allows more accurate error handling on both sides
- also the timeOffset error trigger is now more accurate, but requires
  more nodes to upgrade

bmng-dev/PyBitmessage,hb9kns/PyBitmessage,hb9kns/PyBitmessage,hb9kns/PyBitmessage,bmng-dev/PyBitmessage,hb9kns/PyBitmessage,bmng-dev/PyBitmessage