code: function createUser(name, pass, cb) {
    // Check name
    if(!isValidName(name)) return cb(new Error('Invalid name "'+name+'"'))
    // Check pass
    if(!isValidPass(pass)) return cb(new Error('Invalid pass: "'+pass+'"'))
    // gen salt
    var salt = crypto.randomBytes(16).toString('hex')
    // gen sha1
    var hash = crypto.createHash('sha1')
    hash.update(pass)
    hash.update(salt)
    var password_sha = hash.digest('hex')
    
    var new_doc =
        { _id: user_namespace+':'+name
        , name: name
        , roles: []
        , type: 'user'
        , password_sha: password_sha
        , salt: salt
        }
      ;
    
    nano().use(user_dbname).insert(new_doc, function(err, doc, h) {
      if(err) return cb(err)
      
      // Every user gets its own database
      createDatabase(name, function(err) {
        if(err) return cb(err)
        
        // Sets the _security
        setDatabaseSecurity(name, function(err) {
          if(err) return cb(err)
          cb(null, doc.id, doc.rev)
        })
      })
    })
  }
docs: Creates a new user