Enhance tests for non-default default_domain_id

There were no tests that show what happens when the
default_domain_id is changed from the default. The new tests show
that in some cases the behavior is incorrect, and in other cases
it is correct.

Change-Id: Ia167e153f488617f94afce7fddfc52e1e2c8e79c
Related-Bug: #1265108
Remove unused member from KVS assignment

The KVS assignment backend's _get_user_by_name method was not used.
This change removes it.

Change-Id: I357adf745095b2ac868c3c6eb78e4ab6db2ca0fc
KVS support domain as namespace for users

The KVS identity backend didn't support having users with the
same name in different domains.

Change-Id: I4f6a9010ed085aef9cba5f368e292dd28339a0fa
Related-bug: #1265108
Sync oslo strutils.py

Update openstack/common/strutils.py, which pulls in these commits:
e53fe85 strutils bool_from_string, allow specified default
84d461e Fix a bug in safe_encode where it returns a bytes object in py3

Change-Id: I91d0dbaf40db57d37be170f12c2ef455f0aeb887
Merge "Sync oslo strutils.py"
Merge "Enhance tests for non-default default_domain_id"
Merge "Remove unused member from KVS assignment"
Merge "KVS support domain as namespace for users"