var defaultConfig = {
  'ip': '0.0.0.0',
  'port': 8888,

  'storage_backend': { // Where the peer info is stored
    'name': 'memory',
    'options': {}
  },

  'ssl_enabled': false,
  'ssl_key': '',
  'ssl_cert': '',
  'ssl_ca_cert': '',

  'max_numwant': 100 // Maximum number of peers a client can request
};

function getConfig() {
  return defaultConfig;
}

function getValue(key) {
  return defaultConfig[key];
}

exports.getConfig = getConfig;
exports.getValue = getValue;

@@ -58,187 +58,446 @@
 %0A  '
-storage_backend': %7B // Where the peer info is stored%0A    'name': 'memory',%0A    'options': %7B%7D%0A  %7D,%0A%0A  'ssl_enabled': false,%0A  'ssl_key': '',%0A  'ssl_cert': '',%0A  'ssl_ca_cert': '',%0A
+database': %7B%0A    'backend': 'file',%0A    'options': %7B%0A      'file_path': 'data.db', // Where the data is saved on disk%0A      'flush_interval': 100 // How often to flush data from memory on disk%0A    %7D%0A  %7D,%0A%0A  'ssl_enabled': false,%0A  'ssl_key': '',%0A  'ssl_cert': '',%0A  'ssl_ca_cert': '',%0A%0A  'interval': 120, // How long the client should wait between announce requests%0A  'default_numwant': 30, // Maximum number of peers a client can request
 %0A  '

Update default config.