keystone_user_role supports email as username

When defining the keystone user with the email address, the keystone_user_role doesn't handle it correctly.

user: "user@example.org"
tenant: "test"

keystone_user_role { "user@example.org@test":
  roles = '_member_'
}

Because of the use of the split('@',2) method, user and tenant will be parsed as:
  user: "user"
  tenant: "example.org@test"

By using rpartition('@'), it will be correctly parsed as:
  user: "user@example.org"
  tenant: "test"

A unit test for the keystone_user_role provider is available.

Change-Id: I68139910bb82c62f26ba3433456e5406c99541a2
Closes-Bug: 1341552
Merge "keystone_user_role supports email as username"