Called when the dream is being asked to stop itself and wake.
The default implementation simply calls DreamService.Finish which ends the dream immediately. Subclasses may override this function to perform a smooth exit transition then call DreamService.Finish afterwards.
Note that the dream will only be given a short period of time (currently about five seconds) to wake up. If the dream does not finish itself in a timely manner then the system will forcibly finish it once the time allowance is up.