Remove event loop from play_game() & eventify msg()

A few things in this pullreq:

* Event loop removed from play_game(), so the only loop left is now in process_command().  I'm going to try and remove this too, so the main loop is in the text UI and not in the core.  This will allow a test frontend to be made that doesn't init any of the z-term and textui code, which will make it much easier to do the rest of the split, because it'll crash when the game expects them to be there and they're not...

* msg() and sound() both use the event system now, which means that sound_hook is gone.  It's nice when you have a powerful generic system you can fold other things into. :)  This did mean z-msg.c has turned into message.c since it depends on game-event.h.