Description
As per the Change Proposal and the Data Model, introduce a brand new API within the profile application that contains role-specific logic for managing users within the profile application's database. The endpoints need to allow users to create an organisation, assign roles, and create users with the school-student role. For a full list of endpoints and the constraints they should impose, please refer to the ProfileApiClient stub in this pull request. Note that the majority of the endpoints don't need to return anything. A simple 204 No Content status code should suffice.
For the endpoints that invite school-owner or school-student users, we need the profile app to detect whether or not a user account exists for the given email address. If not, it should allow the user to create an account first before assigning the role.