use argv
add utest
add utest
add readme