Move settings to its new location
We return a keystone object that contains a request
Remove import
Add method to get a keystone session

This uses either password authentication or token authentication. It
then fetches an unscoped token.

This adds the keystone token to the session, this is then later used to
re-authenticate without needing the username/password, so over the
lifetime of the user being logged in, they use the same token.
Properties have a side-effect of authenticating ;-)

When you attempt to fetch the username or user_id of a user, if a
session does not yet exist, and authentication has not yet been
completed a new session is created, a new unscoped token is grabbed if
necessary and then the users username/user_id is returned as necessary.
Add authenticate function
Someway to logout
Using a project_id we want to get a scoped session

This is how we switch between different projects. We need to scope the
token, for this we need a project_id. The session that is returned can
then be used with the various OpenStack clients.
Property for the unscoped token
Get all projects and return them