convert array of netCDF4.datetime objects to numpy.datetime64 array to support virtual_variable indexing, #121
restrict the conversion of netCDF4.datetime objects to numpy.datetime64 object to valid years (1677<time<2262)
Handle arbitrary shape time arrays in nctime_to_nptime.  Also added the ability to fallback to netCDF4.datetime objects since this solution does not fix the problem for all calendars in all situations.
initial implementation of support for NetCDF groups
cleanup fallback code a bit
use IOError; safer recursion; don't worry about group cycles
Expose more information in DataArray.__repr__

This PR changes the `DataArray` representation so that it displays more of the
information associated with a data array:

- "Coordinates" are indicated by their name and the `repr` of the
  corresponding pandas.Index object (to indicate how they are used as
  indices).
- "Linked" dataset variables are also listed.
   * These are other variables in the dataset associated with a DataArray
     which are also indexed along with the DataArray.
   * They accessible from the `dataset` attribute or by indexing the data
     array with a string.
   * Perhaps their most convenient aspect is that they enable [`groupby`
     operations by
     name](http://xray.readthedocs.org/en/latest/tutorial.html#apply) for
     DataArray objets.
   * This is an admitedly somewhat confusing (though convenient) notion that I
     am considering [removing](https://github.com/xray-
     pydata/xray/issues/117), but we if we don't remove them we should
     certainly expose their existence more clearly, given the potential
     benefits in expressiveness and costs in performance.

Questions to resolve:

- Is "Linked dataset variables" the best name for these?
- Perhaps it would be useful to show more information about these linked
  variables, such as their dimensions and/or shape?

Examples of the new repr are on nbviewer:
http://nbviewer.ipython.org/gist/shoyer/94936e5b71613683d95a
Require only numpy 1.7 for the benefit of readthedocs

ReadTheDocs comes with pre-built packages for the basic scientific python
stack, but some of these packages are old (e.g., numpy is 1.7.1). The only way
to upgrade packages on readthedocs is to use a virtual environment and a
requirements.txt.

Unfortunately, this means we can't upgrade both numpy and pandas
simultaneously, because pandas may get built first and link against the wrong
version of numpy. We inadvertantly stumbled upon a work around to build the
"latest" docs by first installing numpy in the (cached) virtual environment,
and then later (in another commit), adding pandas to the requirements.txt
file.

However, this is a real hack and makes it impossible to maintain different
versions of the docs, such as for tagged releases. Accordingly, this commit
relaxes the numpy version requirement so we can use a version that readthedocs
already has installed. (We actually don't really need a newer version of numpy
for any current functionality in xray, although it's nice to have for support
for missing value functions like nanmean.)
simplify group access to avoid recursion; test missing group error
Add further testing for single element time ordinals.
Expanded warnings for when non numpy.datetime64 arrays are returned.
Use context manager for warnings in test_conventions.py.
filter warnings from earlier tests
Merge pull request #129 from xray-pydata/require-np17

Require only numpy 1.7 for the benefit of readthedocs
correct filter message for warnings
add test to catch fallback warnings, insure returning a numpy array during fallback of single element
fix python 3 build; right way to test exception is raised
Merge pull request #126 from jhamman/cast_nc_datetime

Return numpy.datetime64 arrays for non-standard calendars
Merge pull request #127 from alimanfoo/netcdf-group-support

initial implementation of support for NetCDF groups
Update GitHub links from xray-pydata to xray
Tweak specification of dependencies for readthedocs
Fix concatenating of Variables with dtype=datetime64

This is a more direct fix for the bug @akleeman reported #125.

Previously, it did not always work to modify Variable.values in-place (as done
in Variable.concat), because as_array_or_item could return a copy of an
ndarray instead of a view.

@akleeman I didn't incorporate your tests for the