Wait for server to start before running tests

On some setups (notably in a vagrant box) the first test sometimes fails
because the server takes longer than 5 seconds to start. [1]

This change uses netcat (nc(1)) to wait for the server to open port 3100
before it continues running the tests.

Added an echo statement to make it more obvious what's going on if the
test server isn't running for some reason, thanks @mhl for the
suggestion!

[1] https://github.com/mysociety/popit/issues/280#issuecomment-31930573
[vagrant] Install chromedriver 2.8 in provision.sh

Running the tests was generating some errors which related to the
version of chromedriver we were using. [1]

This downloads the latest version of chromedriver, for some reason the
unzipped file had its permissions set to 700, so the chmod is necessary
to make the binary usable to regular users.

[1] https://github.com/mysociety/popit/issues/280#issuecomment-31931073
[vagrant] Make sure graphicsmagick is installed

Without graphicsmagick installed there are errors when running the
tests [1].

Added graphicsmagick to the list of packages installed by apt-get.

[1] https://github.com/mysociety/popit/issues/280#issuecomment-31962704
[vagrant] Tidy up Vagrantfile

Various fixes to ensure the example Vagrantfile works out of the box as
described by the documentation.

- Re-enable the provision.sh script (removed in
  4da43939f46671192ecaba525e0715ea3314c464, presumably by accident
  during the upgrade)
- Make sure code is available at /vagrant/popit
- Use vagrant's default network settings
- Don't use NFS and remove related code