Copy-edit docstrings

[ci skip]
Copy-edit README
Update credits in README
Fix license in README
Limit build status image to master branch

[ci skip]
Fix commentary
Make errors appear in correct order [#96]

We used to add overlays back to front, to make the last error appear on
top.  However, since we are showing all error messages at point now, we
should maintain the order of errors for the sake of clarity.
Fix duplicate error messages [#96]

Re-use existing overlays for errors to avoid duplicate overlays and
error messages.  This would happen with chained checkers.  After the
last checker was run, *all* errors are reported again, including those
of the previous checkers.  Hence overlays for errors from previous
checkers would be added again and again.  While this doesn't matter with
regards to highlighting, it resulted in duplicate error messages when
showing all error messages as implemented in #96, which is really
annoying.
Fix void function error
Remove duplicate positions in error navigation

Avoids apparently no-op movements when using prefix arguments, e.g. `M-2
M-x flycheck-first-error`.
Test error navigation [#95]
Split next-error function from Flycheck command

Allows users to advise Flycheck error navigation independently from
Compilation Mode navigation.
Improve Emacs provisioning

Reduce amount of packages to install, by not installing ELisp sources,
docs, and by using packages without X to reduce dependencies.  On Travis
CI, only install the Emacs that is tested against, and abort
provisioning, if it fails to install, to get a clear errored state.
Use the right Emacs to execute Carton
[Fix #29] Globalize Flycheck mode
Fix names of test resource buffers
Fix detection of temporary buffers

Gets ed2cc51 right.
Remove duplicate version string

[ci skip]
Refactor test suite to ease test running

Merge testhelpers back into testsuite files to reduce load hassle, and
put all testsuite symbols into the `flycheck-testsuite` namespace.

The testsuite.el does not longer change global settings, e.g. like
`debug-on-error`, and emits no messages anymore, so it's clean to load
into a running Emacs.

Add a test runner script which takes a test selector as argument so that
we don't need to run the whole test suite each time, which is a huge
relief now that we have well over hundred test cases.  The whole thing
is wrapped up as `tests/run.sh` which is now the preferred way to run
tests interactively on the terminal.
Fix pylint test cases

Prevent checking of buffers if pylint is not installed, to avoid false
positives.