Close #Iss218

I made a few variables that should actually remain private public. If the solution is OK, I am going to resolve that using getters / setters etc. but I wanted you to have a look first because I am not quite sure if it is a good idea to "connect" those classes.
This might set us up for a tiny chance of a null pointer error in the future as `output_line` is set on construction only through a pretty tangled path (`on_settings_changed`). It's probably better to use `original_output_line`.

Also, we don't need a default here (in fact, I'm surprised that even compiles).