Improved copy methods

The new copy methods have a uniform API (which also matches pandas): they take
a keyword argument `deep`.

`deep=False` no longer always loads data into a numpy array. This makes it
possible to write functions to using the public API to rename variable
dimensions without always loading variables into memory.
Allow Dataset.concat to take a str for concat_over

This is a simple fix for an issue that Holly encountered.
Simple getting-started guide and imports for readthedocs

Read the docs can now build documentation on the fly using IPython:
http://xray.readthedocs.org/en/latest/getting-started.html
Dataset.merge ignores conflicting variable attributes

This is meant as a temporary fix until we figure out the right logic --
note the comments in the docs to this effect.
Use exact array_equal for dtype=object in xarray_equal
More flexible math with variables from different datasets

PR #33 was definitely a useful change -- item access via [] should return
items still in the context of the dataset they were pulled from.

However, it doesn't make sense to always keep track of all dataset variables.
A particular example is when doing math between variables from different
datasets.

To be more concrete, suppose I have two datasets ("obs" and "sim"), each with
two measurement variables ("tmin" and "tmax"). It should be possible to
calculate `obs['tmin'] - sim['tmin']` without a merge conflict due to
conflicting values of "tmax". Unfortunately, this is exactly what the current
version of xray reports.

This PR fixes this behavior, by automatically including only coordinates
necessary to describe the arrays involved (via `DatasetArray.select`) when
merging datasets resulting from mathematical operations.

A possible downside is that occasionally auxiliary coordinates worth keeping
around will be lost (e.g., `(2 * obs['tmin']).dataset` no longer contains a
variable "tmax"). But on the whole I think this behavior is much more in line
with reasonable expectations.

This change also removes the DatasetArray methods `refocus` and `unselected`
from the public API. I think this is the right call, since these functions
were highly specific and really only useful for the prior version of the
internal API.
Select dataset arrays before merging via dataset[key] = value

It did not really make sense that adding a dataset array to another dataset
with `Dataset.__setitem__` by default merged all dataset variables. With this
commit, set item only merges `dataset_array.select().dataset` (e.g., the array
variable itself and any coordinates). If you really want to merge in the full
dataset associated with a dataset array, there is still `Dataset.merge`, but I
expect this behavior will be less surprising.
datasetarray-math-select rebase fix-up
Merge pull request #68 from akleeman/datasetarray-math-select

ENH: More flexible math with variables from different datasets
Improved __repr__/__str__ for xray objects

The new `__repr__` for xray.Dataset is inspired by the representation
for iris.Cube:

    <xray.Dataset>
    Coordinates:     (time: 20, dim1: 100, dim2: 50, dim3: 10)
    Non-coordinates:
        var1              -         X          X         -
        var2              -         X          X         -
        var3              -         X          -         X
    Attributes:
        Empty

The new `__repr__` for xray.XArray and xray.DatasetArray shows the actual data
as summarized by `repr(array.data)`, as long as the data is an ndarray or
has fewer than 10^5 elements (~400 KB):

    <xray.DatasetArray 'my_variable' (time: 2, x: 3)>
    array([[1, 2, 3],
           [4, 5, 6]])
    Attributes:
        foo: bar

`__repr__` not showing the data was a complaint I heard about the prior
representation.

I removed the separate `__str__` implementation so we can have one canonical
string representation (both implementations showed equivalent information).

I am definitely open to suggestions for improving either of these!
Fix typo in XArray.in_memory
Merge pull request #70 from akleeman/better-repr

ENH: Improved __repr__/__str__ for xray objects
Merge pull request #71 from akleeman/improved-copy

ENH: Improved copy methods
Merge pull request #72 from akleeman/fix-Dataset.concat-concat_over

ENH: Allow Dataset.concat to take a str for concat_over
Merge pull request #74 from akleeman/rtd-build

Simple getting-started guide and imports for readthedocs
Merge pull request #76 from akleeman/ignore-attributes-in-merge

Dataset.merge ignores conflicting variable attributes
Reworked README again to improve presentation
Merge pull request #82 from akleeman/new-readme

Reworked README again to improve presentation
Fix: dataset_repr was failing on empty datasets.
Added a test for empty datasets repr