Fix setup
Fixes to tests, mostly doctests.

doctests now actually work, before they did not.

test_qeventloop, removed totally superfluous class, replaced with top-level testing functions (personal preference)
use setuptools, mainly to support `python setup.py develop`.
reduce sleep time, it doesn't need to be slow to test adequately.
be sure to return the _Cancelable
(may want to rename this Handle, in order to fit with asyncio's naming convention)
- more interesting demo application (IMO)
- updated travis-ci to point to harvimt/quamash instead of aknuds1/quamash
mostly pointless style change to force travis into updating.
tabs to space
fix rst
misspelling
Merge branch 'master' into unix
py.test with pep8 (defaults to on) and htmlcov (optional)
PEP8 fixes
pretty much all whitespace/indentation changes of some sort:
- Adding in extra whitespace
- removing trailing whitespace
- where Arve Knudsen used the align form of line continuations switch to the hanging indent form (the align form is not possible when using tabs)
Follow concurrent.futures.Executor.shutdown semantics correctly

An executor should have a shutdown method (not a close method) that blocks until all jobs are complete releases resources
After an executor has been shutdown, it should raise a RuntimeError
Removed extraneous function I added.

This is a vestigial function from a bug I fixed earlier. (after second-guessing Arve before second-guessing [third-guessing?] myself)
Test all executors

The default executor, the QThreadExecutor and the 2 builtin executors (ThreadPool and ProcessPool)