Refactored the project to be more flexible in its layout.