Update with new mongo client async API changes

I think we should pull this work in as master doesn't even compile. There are still some failing tests, but I think it's mostly bugs the mongo guys need to fix.