update

add async loading, module dependency resolve