Normalized works with constants

or'ing 0 was wrong, we should allow constants to have nil order and
compact the result of map and or THAT against 0.
Cleaned up adj list output

The output for just running diffeq.rb is a bit cleaner and clearer I
think now. Shows edges and weights instead of hash of hashes of edge
weights.