Major overhaul to internal structure
Numerous simplifications throughout codebase
More consistent styling used