added to architecture docs and added code pretty-print and mermaid for drawing graphs