neatin up unit test a bit
add new noise merge test
add getEdge function to simplify the messier graph logic
more getEdge cleanups
add initial global clean step to denoise graph
set clean step at the end graph merge