Fixes bug with cart_coords LocalArray property.

Includes regression test.
assertEquals -> assertEqual

dude.
WIP: start client map implementation
WIP: client-side maps.
Implements ClientMap.possibly_owning_ranks()
Adds encoding and copyright boilerplate to client_map.py
Refactoring of client maps.

Adds the ClientMDMap class and underlying ClientMap classes.
Adds more tests for client-side maps.
Have to pull in range and reduce from six.

Thanks, Travis, for catching this one on Py3!
WIP: working on client map integration into DistArray.
Merge branch 'master' into feature/client-maps

Conflicts:
	distarray/context.py
	distarray/local/base.py
	distarray/tests/test_client.py
Cleanup client_map.py
Always use MDMap when indexing a DistArray.
Major surgery to integrate client maps.
Remove DistArray._get_coords_from_rank() method.
More client-side maps related refactorings.
Adds DistArray.from_localarrays() classmethod.

DistArray.__init__ now takes a ClientMDMap object and creates a new
empty distarray using the client map's metadata.
client.py refactoring and cleanup.
Don't need DistArray._get_attribute() method anymore.
Adds `owning_targets()` method to ClientMDMap class.