/*
Includes any custom middleware functions.
function registerMiddleware(app, config) {
    /* Check for basic auth */
    if (config.authorization && typeof config.authorization.basic === 'object' && config.authorization.basic) {
      registerBasicAuth(app, config.authorization.basic);
    }
    // Check if we have favicon
    registerFavicon(app, config);
    /* Parse root middlewares. */
    for (let i = 0; i < this[rootMiddleware].length; i++) {
      app.use(this[rootMiddleware][i]);
    }
    delete this[rootMiddleware];
    /* Parse Form data */
    app.use(bodyParser.urlencoded({
      extended: false,
      limit: config.options.payloadLimit,
      parameterLimit: 500
    }));
    /* Parse JSON in the body */
    app.use(bodyParser.json({
      limit: config.options.payloadLimit
    }));
    /* attach any middleware */
    for (let i = 0; i < this[middleware].length; i++) {
      app.use(this[middleware][i]);
    }
    this[middleware] = [];
  }