Add refactored backend
Refactor backend:
- Refactor all previous api endpoints
- Add documentation for all endpoints (Should be rechecked for typos)
- Integrate ML course creation pipeline
- Set up fastapi dependecy injection container
- Set up DatabaseManager to manage connections and transactions in scope of one http request