changed return types from IAsyncEnumerable to IAsyncCursor, implying that the result has already been materialized except in the case of $out.
removed IAsyncEnumerable and IAsyncEnumerator.