support scripting
fix graph use shortest_path_req
add example to README