MONGODB-X509 + unit tests

Gustavo,

I had to make two changes to get my test to run. One is that OtherDBRoles should be usable with "$external" as well as "admin". The other is that, in order to enable the "localhost exception" if updateUser fails with an auth error (13) we need to try the createUser. I'm fairly certain that the "localhost exception" fix is correct, but I'd like validation from you that that the $external db OtherDBRoles change is correct.

I have an additional change where I replace the low valued mongod response codes with constants, but I'll submit that separately, because I think you might just not like it.

Thanks,
Gabriel