Use reversion to handle QSD. [WIP]

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.

**TODO:**
* rename create_date => modify_date? not necessary but would make it more clear what the date is
* improve migration: do more efficient conversion if that's possible, and also make the migration set each revision's date+time attribute (or redesign admin panel to show create(modify)_date instead of the date from the revision).
* test the backwards migration