Fix for #1942.  Added pickling test class for coordinates as well

Fix for issue #1942.  Per http://www.mail-archive.com/numpy-discussion@scipy.org/msg02446.html, `__reduce__` and `__setstate__` must completely specify the state of the object to be (un)pickled.  I overrode those methods to account for the extra attribute in Longitude.  I also added a basic test class for pickling/unpickling coordinates.