lightweight async script loader