cleaner dot output

generalize the writing of nodes and edges
updated sample
special casing primary packages

penwidth is 3
group them together so lines are straighter
Only included because of devDependencies? Then an oval

other style tweaks