More refactoring, picking up where I last left off