Make tenant name lookup for keystone user lazy

Previously, when you managed a keystone user, Puppet
would start by loading all information available
about each user. Most of this information was loaded
with a single call to user-list, but the tenant name
required an additional two commands (one to get the
tenantId, and an additional one to get the tenant name)

This patch makes the tenant lookup lazy, meaning that
those additional calls will only be performed when
the tenant attribute is actually used. This will
cause a significant performance increase for the
case where only a large set of users exists, and
only a small fraction of them need to be managed.

Partial-Bug: 1224179
Change-Id: I7141d8e922005ecae33c2c596c9806a03fede53f
(cherry picked from commit c194f374e2c54d03f34f28f002e478b8556c94c3)