Refactoring, and work on personal core.
Restructured codebase to allow macro usage.