Refactor role list subcommand for identity v3 api

Currently parts of user list and group list command are actually
functioning as role listing, which is quite counter intuitive and
misleading.

This refactor change move role related logic to a single place of role
list command. It now allows role grants listing for user/group +
domain/project combinations.

If no user or group specified, it will list all roles in the system,
which is the default behaviour.

Change-Id: I4ced6df4b76f018d01000d28b4281ad9f252ffcc
Merge "Refactor role list subcommand for identity v3 api"
Updated from global requirements

Change-Id: I708fe9d2f10e53d61e67130ff41b0f92cddef64d