More refactoring and tackled 10, 11, and 14