Einige refactorings und weiterentwicklung.