Added pre and post command hooks and reboot functionality if a rename is needed during the resetnetwork command.

- Added running pre and post command hooks
- Added reboot functionality and flags to allow us to control the continued processing of commands on service shutdown and reboot flag.
- Added the ability to run an additional command after a reboot is triggered
- Added functionality to not acknowledge that command run after a reboot is triggered to allow the instance to not go active until after the reboot has finished.  (IE.. specifically to run kmsactivate before rebooting to keep the instance from going active too soon)