Made more portable, with better behaviour in go1.1+.

In go 1.1, the filepath.SplitList does exactly what we want, with some
special logic where it's needed (eg: Windows).

In go 1, SplitList doesn't exist, so the old behaviour (strings.Split) is
used instead with os.PathListSeparator, making it again more portable
than before.

The new code should work everywhere go does, instead of arbitrarily
limiting support to linux and windows.