Hi,
Reading the documentation about plugins development I remark that all hooks are for after an action took place.
I'm not actually a plugin developer. Not much time to give it a try but...
Working with an existing plugin, having trouble with it on the destroy of my machine. I then decided to check the plugin code and nothing could be done directly in the plugin. It work fine according to what is available.
My suggestion would be for vagrant to give hooks for before an action take place. Example: machine_action_halt could have a machine_action_before_halt that would be triggered before halting the machine, etc...
Just my two cents ;)