UPDATE: several changes.

This commit ist informal to show progress, but contains serious flaws,
do not compile this stuff.