Implement an asynchronous name resolver class