changeState = function (nextState, nextValue) {
            state = nextState;
            value = nextValue;
        }
An alternate implementation of a Promise that does not fully follow
the spec, but instead works fully synchronous while still being
thenable.

These promises can be mixed with regular promises at which point
the synchronous behaviour is lost.