A simple implementation of a thunk
@param formula function used to lazily initialize the thunk
@return {Function}
function thunk(formula) {
        var evaluated = false,
            value;
        return function() {
            if (evaluated === false) { value = formula(); evaluated = true; }
            return value;
        };
    }