Ric, how about this solution:
1) EzSync is kept closed (not running)
2) Upon shutdown, we launch EZSync using
Interceptor
3) Ezsync attempts to sync. If successfull, it then initiates a shutdown/hibernate or whatever have you. If not successfull, it also shutdown/hibernate.
This way, there will never be a problem with Ezsync attempting to sync & shutdown upon system bootup. (it is not launched upon boot, only upon shutdown etc.)
Alternatively, code something into EZsync that will be able to determine when a hibernation has been initiated, and have it do it's thing. Frodo coded Interceptor, so he might have some code to share.