Catch handshake error

* Fix application start up on test suite;
* Catch handshake error and raise `{Status, Message}`;
* Add test for error before switching protocol.

Can you give me some feedback here? I moved the `init_ack(ok, self())` after successful handshake. Is it correct?

This should close #28