Adds AUTHORS file generated from git log (and de-duplicated).

Also adds a unit test (copied from Glance) to check that the
AUTHORS file is up-to-date.

Change-Id: I365d74ecef49f8e10a5edd4b7c768bb88c697a17
Update auth_token middleware so it sets X_USER_ID.

Fixes LP Bug #941101.

Change-Id: I67b68f6004456eb76003fdcd2ec3fb4c9b9f3bfb
fleshing out architecture docs

Change-Id: I60e59ad7a8140985eddb86ece09e7d45bb3dbfa0
XML de/serialization (bug 928058)

Middleware rewrites incoming XML requests as JSON, and outgoing JSON as
XML, per Accept and Content-Type headers.

Tests assert that core API methods support WADL/XSD specs, and cover
JSON content as well.

Change-Id: I6897971dd745766cbc472fd6e5346b1b34d933b0
Add HEAD /tokens/{token_id} (bug 933587)

Also addresses bug 928045 by returning 204 No Content
for null content bodies.

Change-Id: Icd4b8b5f6c29c074cb014c301fe86cd917f6663e
Support unicode in the keystone database.

Fixes the horizon instance of bug 931667.

Change-Id: Ia8d76e948d6f6ddfd13723b549674d5d857cc207
Merge "fleshing out architecture docs"
Merge "XML de/serialization (bug 928058)"
Implements extension discovery (bug 928054)

Public & admin specific variations of:
- GET /extensions
- GET /extensions/{extension_alias}

Change-Id: I9f8424667f1a8a10d2a7301d42d60800ba207f3e
Merge "Support unicode in the keystone database."
Merge "Implements extension discovery (bug 928054)"
Merge "Add HEAD /tokens/{token_id} (bug 933587)"
LDAP Identity backend

Bug 933852

Merged over the code from the legacy keystone implementation, updated
style and streamlined the API a bit.

 * Unit tests can be run against a live OpenLDAP server
 * Password hashing done via passlib. Only does salted sha1, which is what simple_bind requires, but is not secure.
 * Added pip dependencies

Change-Id: I5296d94f6b7d0a7c7dbc887cdae872171e34bb5f
Set tenantName to 'admin' in get_admin_auth_token.

Sets the tenantName to 'admin' in get_admin_auth_token. This
is required because user-only roles are currently not supported.
Give that wsgi is hard coded to check for 'role:admin' this
seems to be a reasonable thing to do. In the future it would be nice
to add a custom admin_role setting in the config file so the
role wouldn't be hard coded to 'admin'.

Also removes unused version of get_admin_auth_token.

Fixes LP Bug #939015.

Change-Id: I545b458e31c8a44a5a69cad1e875f0fe02956246
Implement a Catalog SQL backend

This adds a catalog SQL backend.  Makes use of 3 tables: endpoint,
service and service_endpoint_association.  Services and endpoints are
joined via the association table.  New sqlalchemy models have been defined
in keystone/catalog/backends/sql.py and are imported during the initial
migration (v001).

Configuring the service catalog is possible with changes to
python-keystoneclient.  I will be proposing a merge for that and I'll
update this commit msg with a link to its review.  With those client
changes, admins can now create and delete endpoints that are associated
with existing services. Existing service commands on the client-side work
as expected against this new backend.  This driver's get_catalog method
properly translates existing services, endpoints and relatoins into something
consumable by keystone non-admin users / clients.

Update: Some cleanup as per bcwaldon's suggestions

Update: Match functionality of existing catalog backend by returning
        IDs instead of sql objects for list_services() and list_endpoints()

Update: pep8 fixes

Update (1/2): Remove legacy OS-KSADM stuff

Update (2/2): Remove ServiceEndpointAssociation table/model
              in favor of a FK, endpoint.service_id -> service.id

Resolves bug 928053

Change-Id: Icc11889920744c36255f06356744cb247d79f4aa
Merge "Implement a Catalog SQL backend"
Add Vary header (bug 928057)

Change-Id: I0db0d64725824fb27cb1f9418203d962f82b00ab
Provide request to Middleware.process_response()

It appears that no middleware has taken advantage of
the builtin process_response(response) convention,
because a reference to the original request is
typically necessary to build an appropriate response.

Change-Id: If032261974eb1d756abdbd5b18892091978e2a07
renaming pip-requires-test to test-requires

 * (per request from jeblair)
 * version of python-ldap match between
   test and requires
 * pinned to 2.3.13 to let tests work in macosx
 * separating dependencies between deps and test
 * removed python-keystoneclient from install_requires
   for now. (there is no python-keystoneclient in PyPI)
   Real solution coming.

Change-Id: I89e50d6747fb57dee7badb17bc1231d3619e3ef7
Align tox jobs with project standards.

Change-Id: I215773d0d1b2f5763efcf96b3b84a291df856ad0