equals and identical methods for Dataset, DataArray and Variable

These methods mirror the equals and identical methods for pandas objects.
Equals means that two objects are functionally equivalent; identical also
checks all attributes. The function utils.variable_equal now raises a
FutureWarning when used.
Merge branch 'equals-method'