Ensure that images with only NaN or Inf values don't crash FITSFigure
Make world2pix and pix2worled more flexible, add tests

Currently, world2pix fails if the coordinates are passed as an
astropy.Column:
```
>>> from aplpy.tests.helpers import generate_wcs
>>> header_dir = os.path.join(os.path.dirname(os.path.abspath(aplpy.tests.helpers.__file__)), 'data/2d_fits')
>>> REFERENCE = os.path.join(header_dir, '1904-66_TAN.hdr')
>>> wcs = generate_wcs(REFERENCE)
>>> f = aplpy.FITSFigure(wcs)
>>> tab = Table({'RA':[347.,349.], 'DEC':[-68.,-68]})
>>> f.show_markers(tab['RA'], tab['DEC'])
ERROR: Exception: world2pix should be provided either with two scalars, two lists, or two numpy arrays [aplpy.wcs_util]
---------------------------------------------------------------------------
Exception                                 Traceback (most recent call last)
/home/moritz/Dropbox/code/python/APLpy/<ipython-input-24-258b140abdf0> in <module>()
----> 1 f.show_markers(tab['RA'],tab['DEC'])

/home/moritz/Dropbox/code/python/APLpy/aplpy/aplpy.pyc in show_markers(self, xw, yw, layer, **kwargs)

/home/moritz/Dropbox/code/python/APLpy/aplpy/decorators.pyc in _auto_refresh(f, *args, **kwargs)
     23     mydata.nesting = getattr(mydata, 'nesting', 0) + 1
     24     try:
---> 25         f(*args, **kwargs)
     26     finally:
     27         mydata.nesting -= 1

/home/moritz/Dropbox/code/python/APLpy/aplpy/aplpy.pyc in show_markers(self, xw, yw, layer, **kwargs)
    957             self.remove_layer(layer, raise_exception=False)
    958
--> 959         xp, yp = wcs_util.world2pix(self._wcs, xw, yw)
    960         s = self._ax1.scatter(xp, yp, **kwargs)
    961

/home/moritz/Dropbox/code/python/APLpy/aplpy/wcs_util.pyc in world2pix(wcs, x_world, y_world)
    456         return wcs.wcs_sky2pix(x_world, y_world, 1)
    457     else:
--> 458         raise Exception("world2pix should be provided either with two scalars, two lists, or two numpy arrays")
    459
    460

Exception: world2pix should be provided either with two scalars, two lists, or two numpy arrays
```

This pull request solves that issue.
use isinstance instead of duck-typing

This follows @astrofrog 's suggestion in the comments. Might be safer here.
The implementation can eben be a little shorter, since `np.ma.array`
and `np.rec.array` also subclass from `np.ndarray`.
Just s before, this passes the tests locally, so we'll need to see
what Travis says.
add aditional tests for wcs_utils
Merge pull request #113 from astrofrog/fix-nan-crash

Ensure that images with only NaN or Inf values don't crash FITSFigure
added normalization documentation showing the definitions of vmid etc
doc fixes per @astrofrog's recommendations
added a "bugfix" / hack to copy pc -> cd
added test for wcs hack, and added more layers of checking for pc vs cd
(i.e., in scale).  Use if+hasattr instead of try b/c nested try/excepts
are ugly.
commented out a failing test.  Tests still do not pass.
removed hack, which really seriously broke wcs, and instead use a more
sensible replacement of the pixel_scale function
clarification and rewording
added power,sqrt to list at top
hasattr(..,'cd') -> .has_cd()
Check which exception is returned in tests, modify tests
Merge pull request #114 from hamogu/acceptastropy

Make world2pix and pix2worled more flexible, add tests
added another detail for a->m conversion
Merge pull request #117 from keflavich/normalize_docs

Added documentation for the normalizations
Improvements to normalization docs
Added note about defaults to normalize.rst