whole_func_string: function lazyMixinPageUtilMethods(page){
  	var proto = Object.getPrototypeOf(page);
  	if (proto._haveMixedInPageUtilMethods) return;
  
  	proto._haveMixedInPageUtilMethods = true;
  
  	Object.keys(PAGE_MIXIN).forEach(method => {
  		if (proto[method]){
  			throw new Error(`PAGE_MIXINS method override: ${
  				(proto.constructor||{}).name
  			}.${method}`);
  		}
  		proto[method] = PAGE_MIXIN[method];
  	});
  }
func_code_string: function lazyMixinPageUtilMethods(page){
  	var proto = Object.getPrototypeOf(page);
  	if (proto._haveMixedInPageUtilMethods) return;
  
  	proto._haveMixedInPageUtilMethods = true;
  
  	Object.keys(PAGE_MIXIN).forEach(method => {
  		if (proto[method]){
  			throw new Error(`PAGE_MIXINS method override: ${
  				(proto.constructor||{}).name
  			}.${method}`);
  		}
  		proto[method] = PAGE_MIXIN[method];
  	});
  }
func_documentation_string: This attaches `PAGE_MIXIN` methods to page/middleware classes.  It does this only _once_, and thereafter short-circuits.