Adding source code and diagrams