ActionEvented Mixin

**Ready to review and merge**

Just some refactoring. Should already be tested.