Refactored the framework, acts as a proper one now, kind of.