optional auth_db_name param

added a new optional parameter that allows authentication against a database other than the one holding the object data. the default behavior prior to v.24 was to auth against "admin" database, while as of .24 the client always auths against db_name. the auth_db_name parameter provides a supported way to achieve the previous default behavior, and provides functionality similar to other clients (see for example --authenticationDatabase in mongo shell)