Enhance tests for assignment create_grant when no user or group

There were no tests that show the behavior of create_grant when
the user or group doesn't exist. Turns out the behavior is
different depending on the backend (sql vs kvs vs ldap).

Change-Id: I71c3e2b94aaa44e40c8a891b49cc2a9961cee16f
Related-Bug: #1239476
Fix KVS create_grant to not raise NotFound if no user/group

The KVS assigment backend would fail with NotFound if the user
or group didn't exist when calling create_grant while the SQL
assignment backend did not fail.

It's unreasonable to check if the user or group exists when
creating a grant, so the KVS assignment backend is changed to
not require the user or group to exist.

Closes-Bug: #1239476
Change-Id: I2d3b2fd82e7d4d33ac7158968d72cbfbe37528dc
Dependency cleanup

Clean up dependency usage.

a) If the class uses a dependency directly, make sure it's
included (getting from superclass isn't enough)

b) If the class doesn't use a dependency directly, make
sure it's NOT included (being a superclass isn't excuse)

Change-Id: Ifbd489f349ec019a41093a2814664e6d8c9f0069
don't rebind stdlib's os.chdir function

Change-Id: I07d5e8c58007cf716eecb922afb67abe3b53b981
Deprecates V2 controllers

The revocation_list controller method's code was copied from the v2
controller to the v3 controller.  This allows us to cleanly deprecate
the v2 API without impacting the v3 API.

Closes-Bug:#1222696
Change-Id: I0ca7a091a50007c07dfe6942b2653c617ca98e70
Merge "Deprecates V2 controllers"
Updated from global requirements

Closes-Bug: 1239892
Change-Id: I669865879d8c12c5b810553ef9c7f87b9fb26fb1
Merge "don't rebind stdlib's os.chdir function"
Merge "Dependency cleanup"
Merge "Updated from global requirements"
Merge "Enhance tests for assignment create_grant when no user or group"
Merge "Fix KVS create_grant to not raise NotFound if no user/group"