Move task number thresholds to constants

We don't like magic numbers.
Add handling of login file in main module

Allow the main module to handle learning login details from a
~/.habitrpg file, rather than requiring every script using those details
to load them.
Let the main module look after login details

The main habitrpg module now looks after loading login details, so don't
try to do it in this script.
Don't allow no login details to be specified

Almost every method in the HabitRPG API requires login details, so don't
allow creating a HabitRPG instance without them.
Don't save debug information

Having the committed code containing debugging information that's run in
the mainline cases feels wrong.  Let's wait until there's logging and
comments and so forth before storing arbitrary bits of data.
Allow checking API status without an instance

There's no need to have an actual HabitRPG instance for checking the API
status, particularly now we require providing login detail when creating
a HabitRPG instance.  Allow calling HabitRPG.status() as a class method
rather than an instance method.

This includes creating a static method for the actual HabitRPG API query
that doesn't require a HabitRPG instance but does require any headers
(including login details) to be provided, and a separate method that
calls the first to perform API requests that need to be authorized.
Add parsing of timestamps

API responses that contained timestamps are now stored as timezone-aware
datetime.datetime objects rather than the raw strings returned by the
API.