Optimization: Replaced String with StringBuilder whenever output should be appended to to another StringBuilder or file. Also added an optimized method for writing string builders to files. Only replaced in the code that is used by kast, kompile and krun.

Reason: Theoretically this should reduce the amount of created objects and allocated memory. We bypass the conversion from StringBuilder to String.
Result: No visible performance improvement was noticed.