Prevent deletion of objects referenced by datasets

It should not be possible to delete data-groups and data-types used by data-sets.
Rename variables in test
Make name, capped_size readonly in ORM and admin

It would be a lot of work to be able to change these right now.
Rename readonly fields var in model and made set
Do validation in clean() and cache original values

Not only does this mean that the validation code will also be called when the DataSet's modelform is saved but by storing the original values when the model's created we avoid the need to do a DB query each time the model's saved.