Change InteractionMachine to use Q promises and opts (tests still to come)