Refactor v3 API to support filtering

Fixes: bug #1175356

Future implementations of keystone API v3 will support server-side
filtering using key/value attributes. See additional details:
https://github.com/openstack/identity-api/blob/master/openstack-identity-api/src/markdown/identity-api-v3.md#list-entities-filtered-by-attribute

To support this functionality **kwargs need to be passed from the
v3 API classes to keystoneclient.base.CrudManager.list.

This is not fully implemented server-side for all attributes so it's difficult to
document exactly which attributes will work. An example of a working attribute is:
keystone.users.list(name="someone")

Change-Id: I148093fbe37700f890ed44148aa3f63f34ee5ff5
Allow secure user password update.

This patch allows the ability for user password to be updated via
a command prompt so the password doesnt show up in the bash history.
The prompted password is asked twice to verify the match.
If user cntl-D's the prompt a message appears suggesting user to use
either of the options to update the password.

Fixes: bug#938315

Change-Id: I4271ae569b922f33c34f9b015a7ee6f760414e39
Merge "Refactor v3 API to support filtering"
Merge "Allow secure user password update."