Clean up `distarray/core/error/`.

One exception class (out of many) doesn't have the word "Error" at the end.  I fix this.  Also, for some reason it's reimplemented in the only module it's used in.
Capitalize error messages.
Remove `*` imports, except in `__init__.py`s.

Replace with explicit `from` imports.
Whitespace.
Remove unused imports.

Identified by `pyflakes`.
Add a docstring to `run_ipcluster`.
Remove unused variables.

Identified by `pyflakes`.
Fix `LocalArray.copy(...)`.

It didn't actually return anything before.
Fix some mistaken / missing references.

1) `numpy` doesn't have `binary_or` or `binary_xor`; replace these with `bitwise_or` and `bitwise_xor`.

2) the `mod` function was referenced, but missing, so add it.
Fix a typo that probably broke this test.
Capitalize error messages in `denselocalarray`.
Be more explicit about `sync` not being implemented.
Capitalize error messages.
Small PEP8 whitespace change.
Rearrange imports.
Add a simple "does it run test" for unary ops.
Rename a test (a missed rename from the Great Rename).
Also test the func form where an output array is provided.
Remove unused local variables.
Add "will it run" tests for binary ops.

Also do a bit of refactoring.