Refactor
Refactor everything into classes and modules