Final Refactoring

Woot