optimizations to interface roles and actions classes