Remove --dev from composer.

composer installs dev dependencies by default nowadays.
Remove *~ from .gitignore.

I've never seen us ignore these editor files before...
Switch to shields.io for the travis build badge.
Add packagist badges.
Specify the testsuite directory in phpunit.xml.

This allows phpunit to be run without having to specify the path to the
test suite.  This is a nicety for users and can help make this play well
if we hook it up to scrutinizer.
Set the working directory for the docker build.
Enable strict code coverage.
Use phpcs as a library.

Rather than executing phpcs via passthru, pull it in as a library.  This
enables more programmatic access to it.
Use phpunit as a library.

This enables more programmatic access to phpunit, especially when it
comes to code coverage.  By using the code coverage report object
directly we can remove the clover.xml generation and libxml dependency.