Changing Commands and `Geom::Point` to derive from `Struct` to further clean up the design.
Pretty printing for Commands.

Documentation:
Added a picture explaining the shared edges technique used by Flash to store common edge data.