Add the ShutdownInitiated callback to Server

The ShutdownInitiated callback is called at the beginning of the shutdown process and is useful for logging the shutdown action.
What is your reasoning here for assigning it to the new `hook` variable first?