UML Class diagram (possibly final version)