[RFC] make VM handling async