Add core module that cannot be disabled
Major code refactoring