moved bot frame() calls to the end of their update loop

- ensures that frame is updated after all state updates