update: a classe Conexao implementava a interface IDisposable. No metodo Dispose, apenas o GC.SupressFinalize era chamado. Isso siginifica, basicamente, que nenhuma tarefa especifica de dispose era feita (e nem precisa, segundo a documentacao do Mongo), mas falavamos para o GC ignorar o objeto, que era criado toda vez que uma conexao era feita. Removi a implementacao do IDisposable da classe Conexao