oll-doc: Make summary lists more generic

The lists that are used to display the summary of used
categories and tags are now generated from within the
Snippets object. This will make it possible to use that
inside the application window too (independently how it will
be used on the long run).
oll-doc: show maximized initially
oll-doc: Create nicer UI (display in-app)

Display the parse results in the main window
oll-doc: Make output correctly sorted

There had already been the sorted lists available,
it's just one should make use of them ...
oll-doc: Implement tree view for browsing (WIP)

A tree view will be used to browse existing snippets.
Later this will be used to select a single snippet for
- editing metadata
- seeing documentation for that snippet
oll-doc: Fix two superclass-init mistakes
oll-doc: add "by author"
oll-doc: count snippets in tree view

For each author/category/tag there is now a number indicating
how many items are below the node.

To be done: This whole counting etc. should be made more generic,
there is much redundant code now.
oll-doc: browse and display snippets

When clicking on a snippet name in the left-hand tree view
the contents of the definition and the example file are
displayed in the right-hand text edits.

This is of course only an intermediate state.
oll-doc: remove independent ...names lists

the different dictionaries have now all a key 'names'.
This entry holds a sorted list of snippet names.

This makes it possible to access a type's (e.g. categories)
snippets by looking up the 'names' key.
oll-doc: factor out addTo... functions

Snippets.addTo() is now a generic function that can add
a snippet or a snippet list to any of the dictionaries.
Merge improvements of olldoc script

Merge branch 'tmp-doc-script' into reorganization.

The script can now be used to browse through openlilylib.
It presents a tree view allowing to browse the library
- by snippet name
- by category
- by tag
- by author

When clicking on an item the content of the definition and of the
usage-example file is displayed. This is of course a preliminary
function.
The next step will be to provide a user interface to edit the metadata
of a snippet, and later we will generate documentation that can be
displayed in the browser itself and rendered to a self-contained
html manual.