Fix tondarray and fromndarray.

Don't use IPython's scatter and gather anymore.

These are pretty slow and should be sped up in the future. This can be
done by speeding up __getitem__ and __setitem__.
Allow distarray ufuncs to take casting kwarg.
Correct tests for distributed ufuncs.

These tests were previously broken.
Some of the tests of bitwise operations had to be removed
because they don't work with the default data.
Add tests for fromndarray and tondarray.
Add previously broken tests.
Change assertions to exceptions.
fromndarray bugfix. Add notes about to/fromarray performance.
Move RandomModule class to its own module. random.py
Maintenence on Random class.

* Rename the class RandomModule -> Random
* Add docstrings mostly from NumPy.
* pep8
* fixbugs from old api changes
Add random import to __init__.py
Add tests for random.py

These tests are pretty dumb, they only check that we are getting the
correct shapes returned.
Remove RandomModule from client.py
Add build notes for hdf5 and h5py.
Link to the HDF5 build notes in index.rst.
Merge pull request #124 from cowlicks/to-from-array

Fix `tondarray` and `fromndarray`
Remove __pycache__ directories with -r.
Merge pull request #136 from enthought/feature/add-hdf5-notes

Add HDF5 / h5py build notes
Separate basic testing and coverage testing in makefile targets.

This makes `coverage` an optional dependency.

`make test` tests without coverage.

`make test_with_coverage` does the obvious.

.travis.yml updated to use `make test_with_coverage`.
Changes report target to coverage_report
Marks all targets as .PHONY