Added the target solution to which the desugaring should combine.
Tweaked the source sugared code that it can create functions like they
used to be created in OOP with the original return type
Added fixed extensions for the possibility of depending methods
Renamed the families. Added class-parameters to the virtual classes
Test Case