A wrapper for NDCube methods to sanitise the wcs argument.

This decorator is only designed to be used on methods of NDCube.

It will find the wcs argument, keyword or positional and if it is None, set it to self.wcs. It will then verify that the WCS has a matching number of pixel dimensions to the dimensionality of the array. It will finally verify that the object passed is a HighLevelWCS object, or an ExtraCoords object.