Use reversion to handle QSD.

This means that rather than creating a new QSD instance each time a model object is updated, they will be handled by django-reversion and will be visible in the history from the admin area.

This commit also makes QSD instances searchable by the URL from the admin area, because this functionality is useful now.

See issue #643.