port Diagrams, from Qt3PtrList to QList

* port the Diagram Class and the derived diagrams
doc: diagram class

* turn existing comments into Doxygen docstring
* keep header clean, add docs to .cpp
doc: turn comments into docstrings
doc: describe diagram classes
update NEWS