added class diagram (final version)