added async, implicit and type tests