docs: function MemoDB (options) {
      var self = this;
      self.options = Object.assign({}, self.DEFAULTOPTIONS, options);
      self.mcache = self.options.mcache || new MemoCache({
          maxSize:5000000,
          alertRatio : 0.9,
          alertCallback : function(stats) {
              console.log("MEMO : alert memory usage ", stats);
          }
      });
      self.router = new MemoRouter(self);
      self.TYPE = self.options.type;
      if(!self.TYPE) throw new Error("missing required type name");
      self.SCHEMA = self.options.schema;
      if(!self.SCHEMA) throw new Error("missing required SCHEMA name");
      self.SCHEMADEFAULT = self.options.schemadefault;
      if(!self.SCHEMADEFAULT) throw new Error("missing required SCHEMADEFAULT function");
  
      assertStoreDir(self);
  }