Reworked DOSBox shell notification callbacks to correctly bookend the lifecycle of a batch file. Removed useless and inaccurate emulatorDidRunStartupCommands: notification.
Cleaned up BXEmulator's vipers-nest of process-state properties to better clarify intent. Reorganized BXSession return-to-shell behavior to centralise the what-do-we-do-now logic and to fix edge cases with nested command prompts.
Added errorcodes for openURLInDOS:error: and friends.