Adds support for string slices

By defining two variables on the same Key and given that the key is
defined as a []string slice, the first string is not overwritten but
instead we append the second value.

E.g. we define our struct:

    type Config struct {
			Foo []string
		}

And now we can say:

    Foo = "Loreum"
		Foo = "Ipsum"

And the resulting config.Foo will be the slice []stirng{"Loreum",
"Ipsum"}. Currently only support for string slices, as we need to check
the slice-type and then convert Value-string to correct type as we
already do - and I could not (yet) figure a smart way of doing this
without repeating the code.
Simplify the appending on key, using Append instead of AppendSlice
Merge pull request #1 from hermansc/slice-support

Adds support for string slices