introduce a general async call interface via autoload