First step of huge refactoring of module system. Added event system. (for now without testing)