Sync latest Oslo

Sync from oslo-incubator commit 46f2b697b6aacc674bc040a8751997ed70490d1a

Major changes of the import are related to update policy module:
0da5de6b54 Allow policy.json resource vs constant check
5d1f15a778 Documenting policy.json syntax
33533b0d97 Keystone user can't perform revoke_token

Most changes are style-related topics:
* Improve Python3 compatibility
* Remove vim modelines
* Support Per-log-level logging translations

Closes-Bug: #1296337
Change-Id: I09f61b10b1b36015d248de25c5c6ed994717a565
Fix KeyError in router:AddInterface error handle

Under some circumstances the exception handling on adding an interface
to a router will produce a KeyError.

The exception happens in
openstack_dashboard/dashboards/project/routers/ports/forms.py in
AddInterface.populate_subnet_id_choices.

In the exception handling code, a reverse() is called an argument of
request.REQUEST['router_id'] which doesn't always exist.

The fix is quite simple: try to look for it in the initial form data as
well, and if 'router_id' is in neither location, fall-back to the index
page.

Change-Id: I74eaf8cd024d2929fed3d4e00b644e5850e2d5b3
Closes-Bug: 1304533
Merge "Fix KeyError in router:AddInterface error handle"
Merge "Sync latest Oslo"