Spectral cubes

First update on spectral cube classes. Obviously still a lot to go - mainly tests.
I think we should make this a subclass of `astropy.nddata.NDData` which has a `.wcs` attribute and is designed as a more general base for this kind of thing.