Project structure and main classes