Reworking architecture.
Add verification upon existence of rules for given action.
Changed traits to classes.
Cleaned file structure.
Merge branch 'develop'