Service-side handshakes for onion services

This is the service-side counterpart to #692 (closed) : we need to make the service side of the cryptographic handshakes that will be used for onion services.