Add a `load_hdf5` function to denselocalarray.py...

that takes a `dim_data` to describe which portions of data to load into a LocalArray.

Also add tests for it.  The unstructured case required filling in a bit of missing code in `base.py`.
Remove some redundancy in test method names.
Apply Mark's fix to clear().
Fix typo in comment.
Tweak a docstring.
Add a parallel `load_hdf5` to the client...

that takes an iterable of dim_data structures, one-per-process.

Also, add tests for it.
Factor out a function: compact_indices.

I used this functionality in load_hdf5, and I plan to use it to load .npy files as well.
Spell out a comprehension a bit.
Load a .npy file into LocalArrays in parallel.
Improve a docstring.
Add some Barrier statements to prevent race conditions.
Factor out test data on client dist-io tests.
Add a client-side load_npy function and tests.
Merge branch 'feature/add-hdf5-io' into feature/parallel-hdf5-loading

Conflicts:
	distarray/client.py
Add Barrier statements to prevent race conditions.
Merge branch 'feature/parallel-hdf5-loading' into feature/parallel-npy-loading

Conflicts:
	distarray/client.py
	distarray/local/tests/paralleltest_io.py
Move load to context.py.

(Accidentally left this off the merge.)
Merge branch 'master' into feature/parallel-hdf5-loading

Conflicts:
	distarray/local/tests/paralleltest_io.py
	distarray/tests/test_distributed_io.py
Merge branch 'feature/parallel-hdf5-loading' into feature/parallel-npy-loading

Conflicts:
	distarray/local/tests/paralleltest_io.py
	distarray/tests/test_distributed_io.py
Merge branch 'master' into feature/parallel-hdf5-loading