APE7 - A plan for NDData

This is ready for review. Comments are solicited until **Friday 14th November** after which a vote will be taken on whether to accept or reject this APE.

(note, this has been renamed to APE7 since there is already an APE6 proposed in #7)
@mwcraig, @astrofrog - I agree that `mask` and `uncertainty` do not have similar issues with being settable as `unit` and `wcs`. E.g., it would seem fine to be able to do
```
nd.uncertainty = np.sqrt(nd.data)
nd.mask = (nd.data >= 65535)
```