This commit:
- Rehashes settings entirely, making it more system aware and
unifying it in multiple objects to account for the need for writes
later.
- Rehashes the API object, making it a much smaller class, wrapping
`requests`.
- Adds a pluggable architecture for resources and commands, built
on top of `click`.
- Adds resources for most major objects in Tower, allowing for CRUD actions.
- Adds job monitoring and cancelation.