function deprecateMethod(book, key, fn, msg) {
    return function() {
        logNotice(book, key, msg);

        return fn.apply(this, arguments);
    };
}
function deprecateMethod(book, key, fn, msg) {
    return function() {
        logNotice(book, key, msg);

        return fn.apply(this, arguments);
    };
}
function deprecateMethod ( book , key , fn , msg ) { return function ( ) { logNotice ( book , key , msg ) ; return fn . apply ( this , arguments ) ; } ; }
Deprecate a function

@param {Book|Output} book
@param {String} key: unique identitifer for the deprecated
@param {Function} fn
@param {String} msg: message to print when called
@return {Function}
Deprecate a function
Deprecate a method