Reduce the number of string objects II

The NimsoftConfig class represents a configuration file and is basically
a tree of nimsoft sections. If make a change we have to write the whole
tree back to disk but building the final configuration was extremly
expensive when the file was big.

Since

    s += "foo\n"

is a short hand for

    s = s + "foo\n"

we end up with creating a new string object for every line of the
resulting file. If we instead use

    s << "foo"

we are manipulating the existing object. I've ran a simple benchmark
against these two implementations and the second way is indeed A LOT
faster.

We also don't slurp in the whole configuration file at once when parsing
the configuration file.