Added a UML diagram.