Handle exception messages with six.text_type

Handle exception messages with six.text_type instead of using
`str`. This is required to prevent of entering bytes to a database and
prevent unexpected behavior of database and database driver.

Change-Id: Idb54ee271cfb09e8523e357674b598b11704742c
Closes-Bug: #1273301
v3 endpoint create should require url

The url parameter of endpoint object is not nullable in db, but we
do not have a null check in api. So, when create a endpoint if I
do not specify url parameter I will get a 500 reponse.
This patch will add an attribute require check to url parameter.

Change-Id: I9c8aa3bcb99ea5cb5e4e4d3306d8d222c6f074d1
Closes-Bug: #1284422
Merge "v3 endpoint create should require url"
Merge "Handle exception messages with six.text_type"
Sync db, db.sqlalchemy, gettextutils from oslo-incubator 6ba44fd

This change sync's oslo-incubator's db module from commit hash
6ba44fd7f9d39a7930defb4e14c37b8b1046cbcb

 $ python update.py --nodeps --base keystone \
    --dest-dir ../keystone \
    --modules db,db.sqlalchemy,gettextutils

- Config options were moved from db.sqlalchemy.session to db.options
- db.sqlalchemy.session doesn't provide get_session, get_engine, or
  cleanup functions.
- db.sqlalchemy.migration.db_version() requires an engine parameter

Closes-Bug: #1227321

Change-Id: I742cef9dab68d9eed977df0039736cfe67ca493c
Fix docstrings in federation related modules

Updated docstrings in keystone/auth/plugins/saml2.py and
keystone/contrib/federation/routers.py, included additional
parameters there was previously missing.

Change-Id: Id8355cdc1ab80b57ed18fcb3b16fd92cb7a73ecf
Closes-Bug: #1288124
Merge "Fix docstrings in federation related modules"
WIP: sync models

Change-Id: I47444c4944f08535227718e368a1950c45c6cb32