Tests & implementation for purge_varnish library
Tests & implementation for calculate_purge_urls

From a given DataSet, calculate all the possible URLs that could refer
to that DataSet. This allows us to purge the right URLs.
(Failing) test that the DataSet purges on update
Call purge when DataSet is updated.

Use the new `calculate_purge_urls` helper code and `purge_varnish`
library to send a Varnish purge request when a DataSet is `save()`d