added hooks for the delete() operation in HookedModel

When hooked delete should be used, be sure to call myModelInstance.delete() rather than myModelInstance.key.delete()