manager login: support for challenge response

AMIFactory changes:
- New attribute named plaintext_login.
- Defaults to True, keeping backwards compatibility.

AMIProtocol changes:
- New method loginChallengeResponse().
- Called instead of login() by connectionMade() if the factory's
  plaintext_login attribute is False.

Note: these changes follow existing code architecture and conventions,
even though AMIFactory's login() docstring states the existing approach
is messy.
manager login: support for challenge response

Whitespace fixing, following highlight from pabelanger.
manager login: support for challenge response

Yet another whitespace fix, following highlight from pabelanger.
Merge pull request #30 from exvito/cram-login

manager login: support for challenge response