Implemented get_records() and create_record().

No tests yet.

Decided to split up update_record() into create_record() and
yet-to-be-implemented delete_record() for better logging and debugging.

Moved would-be update_record() logic into main() and logs if nothing
needs to change, if a record needs to be created, if duplicates need to
be removed, or old/incorrect records need to be removed.

Improved logging, if debug is disabled, don't show handled exceptions,
instead just print/log the summary. Also logs all raw data if debug is
enabled, except when authenticating.

Recorded_ip changed to plural since instead of a string it will now be a
dictionary, incase there are multiple records for a (sub)domain.

_request_json() returns a Payload instance. Helps with logging raw data.

RegistrarBase log messages will now be under RegistrarBase instead of
the subclass' name. I'm logging in both RegistrarBase and RegistrarName
so it only makes sense.

Authentication errors handled in overridden _request_json() since it
catches all non-successful replies.

Also since _request_json() catches all non-successful replies, I had to
include Command Successful in all the tests.