Create a set of APIs to manage courses. This includes adding new courses, updating course details, and retrieving available courses for users.
Tasks:
- Create CRUD endpoints for courses (Create, Read, Update, Delete).
- Ensure proper validation for course data (e.g., course name, price).