Project setup and basic structure.