[APIv3] Specify status endpoint and edit form for WP

Specifies:
* [#17012](https://community.openproject.org/work_packages/17012)
* [#16971](https://community.openproject.org/work_packages/16971)

This PR introduces specification for:
* The full reading part of the statuses endpoint
* PATCH-ing the status of a work package
* edit forms to define which parts of a resource can be changed and which restrictions there are

To Do
-------

- [x] verify permissions needed to view statuses (currently "view work package anywhere")
- [x] Specify first set of action-links (will be required for forms)
- [x] Specify form endpoint
    - [x] basic structure
    - [x] abort errors (HTTP 4xx)
    - [x] indication of validation errors

Open Questions
---------------------
- [x] allowed values (links) vs. allowed values (non-links, e.g. strings)
    - values resource like `/foo?value=Cat`
- [x] handling of overly large lists of allowed values (e.g. users)
    - external collection resource (possibly paginated, possibly searchable)
- [x] what is the link of `changeParent`? Is it different from `update`?
    - same target, but answers question "can I change the parent"; answer can now be found in the form

Remarks
-----------

* This PR also defines behaviour for PATCH/POST calls with completely wrong request bodies (i.e. non JSON; e.g. XML)...
    * specified as HTTP 400
    * most endpoints answer with HTTP 500
    * star/unstar require empty request body
If you mean that we will fill in "nothing" for properties where "nothing" is a valid value (e.g. assignee), I'd say this does not need to be mentioned.

If you mean anything else by saying "empty" (e.g. we will not provide anything), then I do not understand what you mean and we should talk ^^

**tl; dr:** I'd say no, but I have the feeling I have misunderstood you.