Fix Issue 12114 - buildNormalizedPath returns null instead of "."

[Issue details](https://issues.dlang.org/show_bug.cgi?id=12114)

in short:
`buildNormalizedPath(".")` and `buildNormalizedPath("foo", "..")` should both return `.` instead of null
What about test these cases as well:
````
buildNormalizedPath("foo", "", "bar");
buildNormalizedPath("foo", null, "bar");
buildNormalizedPath(null, "foo");
buildNormalizedPath("", "foo");
buildNormalizedPath("", "");
buildNormalizedPath("", null);
buildNormalizedPath(null, "");
buildNormalizedPath(null, null);
````