Travis build improvements.

The latest patch version of each Django minor version is used.
The build now installs existing pymongo versions.
The build now actually tests against the specified Django version.
Replaced PIL with Pillow.
Added PyPy and Python 3.4 to the build.

Rebase Log:

Installing Pillow instead of PIL for testing since it's recommended and it supports PyPy.

Excluding Django versions that do not work with Python 3.

Improved formatting of .travis.yml.

Specifying Pillow 2.0.0 and above since it's the first version that is supported in Python 3.

PIL should not be installed alongside Pillow.

Also, I installed some libraries that both PIL and Pillow depend on.

It seems I have to be explicit on all envvars in order to exclude Django 1.4 from the build matrix.

The build is now installing pymongo versions that actually exist.

openjpeg has a different name on Ubuntu 12.04.

Restoring libz hack.

Also installing all Pillow requirements just in case.

Fixed the build matrix.

Acting according to @BanzaiMan's advice in travis-ci/travis-ci/#1492.
Pillow provides a more descriptive error message, therefor the build failure.
Removing zlib hack since only PIL needs it. The build should pass without it.
Fast finish the build if there are failures since we have a very large build matrix and each build takes a very long time.
Added a note about optional dependencies to the README file.
Made the benchmark script compatitable with Python 3 and ensured it runs on every build.
Skipping a test that does not work on PyPy due to a PyPy bug/feature.
Missed some of the print statements in the benchmarks script.
Found more print statements that were not turned into function calls.
Getting rid of xrange since it's not in Python 3 and does not affect the benchmark.
Convert codebase to Python 3 using 2to3 before running benchmarks.
Only run 2to3 on Python 3.x. Makes sense no?
Merge branch '0.9' into pr/673

Conflicts:
	.travis.yml