code: public ManagerConnection connect(final AsteriskSettings asteriskSettings)
              throws IOException, AuthenticationFailedException, TimeoutException, IllegalStateException
      {
          checkIfAsteriskRunning(asteriskSettings);
          this.makeConnection(asteriskSettings);
          return this.managerConnection;
      }
docs: Establishes a Asterisk ManagerConnection as well as performing the
  'login' required by Asterisk.
  
  @param asteriskSettings
  @return
  @throws IOException
  @throws AuthenticationFailedException
  @throws TimeoutException
  @throws IllegalStateException