Refactor the UserManager and commands.

This branch adds consistency to the UserManager.
Primarily around the use of tags to pass the usernames.
Also untangles the API client from the server that was
there with the user manager structs being defined in the
apiserver package (not params).

The commands have been hooked up, and tested manually.

There were several clear changes needed when testing:
 * until we have multiple environments, creating a user
   should cause that user to have access to the environment
 * when adding a user, we should always write out the jenv
   file (until the user is able to login and see themselves)
 * the remove user command has been renamed to disable,
   as it wasn't removing the user at all (this is still todo)
Many changes due to review comments.

Deactivated renamed throughout.
Client side user manager now deals in strings.
Commands moved into user directory.
Fix spelling mistake.
Final review tweaks.
And fix the test.
Merge pull request #905 from howbazaar/user-manager-tag-redux

Refactor the UserManager and commands.

This branch adds consistency to the UserManager.
Primarily around the use of tags to pass the usernames.
Also untangles the API client from the server that was
there with the user manager structs being defined in the
apiserver package (not params).

The commands have been hooked up, and tested manually.

There were several clear changes needed when testing:
 * until we have multiple environments, creating a user
   should cause that user to have access to the environment
 * when adding a user, we should always write out the jenv
   file (until the user is able to login and see themselves)
 * the remove user command has been renamed to disable,
   as it wasn't removing the user at all (this is still todo)