beginning refactor into classes/objects