Allow admins to revoke admin role

Implement the ability for admins to revoke other admins of their admin
role. Also change the way the admin role is granted so it doesn't
overwrite all of the users roles it just adds the admin role to the
user.
Merge pull request #423 from opscode/admins-ungrant-admins

Allow admins to revoke admin role