Updated file structure to be more modular.