Writing an AsyncLoader to enqueue long running operations