First working commit post-refactor