add test with JSON payload
API refactoring + error handler

rename connectWithLogin:passcode:completion:
    to connectWithLogin:passcode:onConnection:
and all associated methods

rename subscribeTo:handler:
   to subscribeTo:onMessage:
and all associated methods

add connection method taking a ErrorHandler in case of error coming from
the server