add prelim framework for nodes & edges in rust