fn step(&mut self) -> Result<(), RuntimeError>fn stop(self) -> Result<(), RuntimeError>fn pause(&mut self) -> Result<(), RuntimeError>fn resume(&mut self) -> Result<(), RuntimeError>fn hibernate(&mut self) -> Result<(), RuntimeError>fn wake_up(&mut self) -> Result<(), RuntimeError>fn request(&mut self, message: M) -> Result<Response, RuntimeError>