Refactored! Kind of Object-Oriented! Yay!