use short type names in the documentation

Currently, the documentation prints fully qualified names of all the types.
That's not very user-friendly; instead of "java.lang.String", the documentation
should only have "String". Other cases are even worse, such as
"java.util.Map<java.lang.String,java.lang.String>".
generate an index and distinguish units from services

The documentation should have an index of all classes that were processed.
For that, it's good to distinguish units (classes that implement the Unit
interface, directly or indirectly) from services (other classes).