refactoring!

making everything completely modular