What's Changed
This refactoring introduces a new structure for project type classes:
- All project type classes inherit from BaseProject
- Classification, Completeness and Change Detection project types inherit from TileMapServiceBaseProject.
- Task and group classes are reduced to dataclasses and are attributes of project type classes. Logic for creating those are defined as functions in project type classes.
- Implement new inheritance and composition structure for all tutorials (tutorials.py)
- Introduces Digitisation (as subclass of arbitrary geometry) and MediaClassification project types. These project types are currently not supported in the MapSwipe app, but will be relevant in the future and on the upcoming web-client.
- Added tests and updated fixtures