Add status to needs

This change adds an extra `status` attribute to needs.

Status can be:
```
{ "description": "proposed" }
```
or
```
{ "description": "out of scope", "reason": "out of scope reason" }
```
It's designed to completely replace the `in_scope` and `out_of_scope_reason` attributes, so Maslow will need an update.
As far as I could tell from the PR that you linked to, it's a global flag and I'm not sure whether we want to turn it off "_id" globally... I couldn't see any other option to remove it for a specific model.