immutable graphs ftw
some fu about test
safety first; also work on the layouter