added revised class diagrams