Run tests from setup.py, with coverage

The benefits to this change are:

* Running tests with `python setup.py test` (somewhat helpful, but not necessary, for Windows development)
* Having setup.py install coverage.py and flake8 for you when running the above command
* Always generating a code-coverage report when running tests
* UPDATE: coverage actually works (see below)

Drawbacks:

* Test output is more verbose from setup.py (printing a list of individual test names instead of `.` for each test)

I previously thought moving away from the `coverage` command was needed for work in #120, but in #122 I figured out the silly mistake I was making and the `coverage` command still works just fine.

`runtests` still works, but its output is slightly different (swapping the order of coverage.py and flake8).

Please feel free to close this if you'd prefer to keep running tests with the exact report format you have now.

### UPDATE:

For some reason, coverage seems broken on master.

Coverage report on master:

````

Name               Stmts   Miss  Cover
--------------------------------------
mkdocs/__init__        1      1     0%
mkdocs/build          80     80     0%
mkdocs/compat         27     27     0%
mkdocs/config         54     54     0%
mkdocs/gh_deploy      22     22     0%
mkdocs/nav           135    135     0%
mkdocs/new            24     24     0%
mkdocs/serve          68     68     0%
mkdocs/test          181      0   100%
mkdocs/toc            46     46     0%
mkdocs/utils          47     47     0%
--------------------------------------
TOTAL                685    504    26%
````

Coverage on this branch:

````
Name               Stmts   Miss  Cover   Missing
------------------------------------------------
mkdocs/__init__        1      1     0%   1
mkdocs/build          80     46    43%   27-36, 81-106, 151-184, 191-195
mkdocs/compat         27     11    59%   23-35
mkdocs/config         54      7    87%   109, 125-131
mkdocs/gh_deploy      22     22     0%   1-28
mkdocs/nav           135     19    86%   21-26, 67-69, 93-94, 119, 140, 144, 189-190, 196-200, 206-207
mkdocs/new            24     24     0%   2-51
mkdocs/serve          68     68     0%   2-107
mkdocs/test          188     18    90%   4-21, 25, 517, 519-523
mkdocs/toc            46      0   100%
mkdocs/utils          47     17    64%   18-21, 28-31, 38-46, 78
------------------------------------------------
TOTAL                692    233    66%
````

I'm not sure what broke, but this seems to fix it.