Fail fast on paths with Windows-style separators

Add a check in FileSystem to ensure paths with Windows-style separators aren't used. This won't detect mixed separators (e.g. from concatenating two paths with different separators), but it will detect the more common case of someone passing a complete Windows-style path. Such paths have never been officially supported, and have always been partially broken in the new FileSystem. This simply makes them fail fast(er).

Note: we can't simply automatically convert slashes because Mac/Linux paths allow "\" as a normal character within a file/dir name.

This also improves the docs to explain path formats more clearly, and updates older docs on how FileSystem is initialized.

@ingorichter Do you want to review?
(CC @gruehle)