Replace Travis CI Bash script with Ansible playbook
Re-introduce testing VM, based on Ansible
Merge branch 'ansible'

We replace the Bash script used to provision Travis CI with an Ansible
playbook, and re-introduce a Vagrant testing VM based on this playbook.

Originally, we removed the VM because we had to get rid of Puppet on
Travis CI, because it was way too slow.  Ansible however is considerably
faster, and only slightly slower than the Bash script, so we can use it
on Travis CI.  Since it's only little added complexity, we can
re-introduce the VM as well.

Note, though, that test *must* pass on Travis CI nonetheless.  The VM
is *not* considered authoritative.
Ignore errors when installing syntax checker tools

We should rather skip tests than fail on the entire test suite if a
single checker tool is currently unavailable.

In light of the recent search.cpan.org outages…
Remove redundant file
Automatically change to /flycheck on the test VM

No need to do "cd /flycheck" before running the tests anymore.
Install NodeJS on the test VM
[Fix #391] Do not warn for errors from other files

We must look at the errors *before* filtering them, when verifying the
syntax checker results.  Otherwise we'll emit spurious warnings when no
errors are reported for the current file, but for other
files (e.g. includes).
Add option to set Haskell language extensions for GHC

In preparation for flycheck/flycheck-haskell#3
Merge pull request #392 from flycheck/ghc-extensions

Add option to set Haskell language extensions for GHC
Remove redundant Makefile target
Add chaining as a glossary term
[Fix #339] Document chaining of syntax checkers

Extract the :next-checkers property of syntax checkers and create an
admonition which documents the syntax checker chain for each checker.
Add a pseudoxml target to dump the doctrees

Makes debugging of our custom extensions easier.
Use the default theme

The new theme on ReadTheDocs is really much nicer than the built-in
Sphinx theme we used now.
Add :error-filter checker property

Allows syntax checkers to define post-processing functions to modify or
filter errors after parsing.
Collapse whitespace in Emacs Lisp byte compiler messages
Do not implicitly trim error messages
Replace empty error messages with nil
Dedent GHC error messages