whole_func_string: function preInitialize(options) {
  	debug('pre initialize');
  
  	this.app = options.app;
  	this.layoutTemplate = options.layoutTemplate;
  	this.startExpressApp = options.startExpressApp;
  	this.apiAdapter = options.apiAdapter;
  	this.setupRequestContext = options.setupRequestContext;
  }
func_code_string: function preInitialize(options) {
  	debug('pre initialize');
  
  	this.app = options.app;
  	this.layoutTemplate = options.layoutTemplate;
  	this.startExpressApp = options.startExpressApp;
  	this.apiAdapter = options.apiAdapter;
  	this.setupRequestContext = options.setupRequestContext;
  }
func_documentation_string: Function: preInitialize
  This function is called before any initialization or constructor of the
  <Barefoot.Router> is executed. It expects that the passed options object
  contains the following elements:
  
  app - An Express.JS app
  layoutTemplate - The minimal HTML skeleton to render the application into.
  Example: "<html><head></head><body></body></html>"
  startExpressApp - A callback function which initiates the actual startup of
  the Express.JS app from above.
  
  Each of these are copied into this router object directly to access them
  later on.
  
  Parameters:
  (Object) options