* Heavily refactored codebase