Windows compatibility

Fixes some cross platform issues.

* When the target of an internal hyperlink is validated, it will fail if the target's path in the pages config does not use the separator native to the platform. Solved by normalizing paths in the config when validating the target.
* On Windows converting a path to a URL will yield a URL if a trailing backslash, which causes the computation of relative paths to be incorrect. Solved by replacing os.path.sep (instead of os.path.pathsep) with forward slash.