Refactor to more closely adhere to MVP architecture.