Reverting Features and hook_post_features_revert() versus hook_update()

I'm working with a distro and I've been looking for a permanent solution to an issue I have with removing fields defined by the distro which the client does not need. I have used hook_update in the past like this. 

/**
* Remove unused fields from distro
*/
function mymodule_update_7101() {
if ($instance = field_info_instance('node', 'field_topics', 'blog')) {
field_delete_instance($instance, TRUE);
field_purge_batch(1);
}
...
}

The problem being that if the original feature is reverted, the fields come back. I need to be able to revert my feature and have code run to remove the fields from the distro's feature. 

In comes hook_post_features_revert(). Although it's likely not intended to be used this way, it seems like a good place to run code to override other features since it only runs once after our feature is reverted. 

/**
* Implements hook_post_features_revert()
* Remove unused fields from blogs when this feature is reverted
* Otherwise they come back when distro feature is reverted
*/
function mymodule_post_features_revert($component) {
if ($instance = field_info_instance('node', 'field_topics', 'blog')) {
field_delete_instance($instance, TRUE);
field_purge_batch(1);
}
...
}