Execute a game asynchronously. Optionally a listener can be provided to listen for the result of the execution.