Fix lock-up when battle started from cutscene

Battle.go() was performing thread waits directly; as a result, starting
a battle from a Scenario cutscene blocked the Scenario thread,
preventing subsequent Scenario scenes from running and ultimately
hanging the engine.  Fixed by moving the blocking operations into the
battle thread's updater.