Allow any attributes in mapping and include in results

When using attribute mapping (e.g., user_additional_attribute_mapping), any
attributes that Keystone didn't know about were ignored and a warning was
issued, like

 WARNING keystone.common.ldap.core [-] Invalid additional attribute mapping:
 "description:description". Value "description" must use one of password,
 enabled, default_project_id, name, email.

This check is removed. Additional attribute mappings for "unexpected"
attributes (such as description) should be allowed. For one thing, all the
known attributes already have a way of setting the mapping, via the
user_*_attribute config option. This will allow setting a "description" or
any other attribute mapping for users.

The extra attributes defined in the *_additional_attribute_mapping config
options weren't included in the list results. These attributes should be
included in the list results.

This is a combination of 3 commits from master:
(cherry picked from commit 17db03164200f0d7fff564058fc7df8e97705523)
(cherry picked from commit 10051adace7cd728d46cd4c999e3019fdbf2d961)
(cherry picked from commit ebfdab034f2b35074f1645b70c1f07d0c4dfd337)

Change-Id: Ia80174063a5eacdef690ca378b7cb71300a5f5f8
Closes-Bug: #1293698
Merge "Allow any attributes in mapping and include in results" into stable/icehouse