Small refactoring, mostly related to design-related code review comments...

Small refactoring, mostly related to design-related code review comments.

  - no intermediary "client" anymore. Base class for interface definition, and
    UltraDNS implementation derived from that base class.
  - Removed "get_records_by_type" method, added "rtype" param to the "get_records" method instead.
  - Removed docstrings from UltraDNSClient class, because interface is defined in a base class.
Seems to be not necessary since _end_transaction() does this check. Or maybe remove the check from _end_transaction()?