* Site's __init__() takes more args, all optional. As long as enough are
provided to do an API query, the missing ones will be filled in
automatically by _load_attributes(), which is called in __init__().
* User: _get_attribute_from_api() -> _get_attribute();
_load_attributes_from_api() -> _load_attributes.
* Sites in config.json are stored with different keys/values.