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.
Hmm. Why current approach is bad? Why should we cache it if we get it only once?