Even though we sort of said we were never going to do it, Aegis now supports multiple roles per user. You can give a user multiple roles like this:
user.role_names = ['author', 'editor']
Permission is granted when at least one role is allowed access, even if other roles are not.