Split out the Yukibot state into a separate module