converge function, with a bunch of behaviors so far. failing tests. gotta figure out hashable dicts.