code: function appsApprunner() {
  	var result
  	var launchFolder = appdata.getLaunchFolder()
  	var packageJson = path.join(launchFolder, 'package.json')
  	var topLevelApprunner = path.join(launchFolder, 'node_modules', 'apprunner')
  	var myApprunner = path.join(__dirname, '..')
  
  	var package = {name: 'apprunner'}
  	try {
  		package = require(packageJson)
  	} catch (e) {
  		if (e.code !== 'MODULE_NOT_FOUND' ||
  			!~e.message.indexOf(packageJson)) throw e
  	}
  	if (package.name !== 'apprunner')
  		if (fs.existsSync(topLevelApprunner)) {
  			if (myApprunner !== topLevelApprunner) result = require(topLevelApprunner)
  		} else throw new Error('app does not have apprunner in dependencies')
  
  	return result
  }
docs: /*
  issue: apprunner may be required from a sub-module that has an apprunner available lower than top level.
  This is a problem because running duplicate apprunner modules means they are not sharing state.
  Therefore, figure out here if this source file comes from the app's top level apprunner module.
  If it does not, return the top level exports object