start working on properties-on-edges model, write docs

I also wrote some compilation tests for what I have. What could be
tricky is the interplay between `Rep`s and type classes.