Allowing more complex permissions checks

logical AND of all top level permissions.  Will use logical OR for all
first level tuples (check that use has one permissions in the tuple)

Allows users with different roles to access a panel, while a user with
a third role won't be allowed to access the same panel.

Examples:
    Checks for all required permissions
    ('openstack.roles.admin', 'openstack.roles.L3-support')

    Checks for admin AND (L2 or L3)
    ('openstack.roles.admin', ('openstack.roles.L3-support',
                               'openstack.roles.L2-support'),)