expost Path::sep{,_byte}, change WindowsPath::root_path to support returning "C:"

This pull request helps flesh out the paths library. First, it exposes a platform independent way to get the path separator. This is useful when building complicated paths by hand. Second, it changes `WindowsPath::root_path` to return all the possible windows path prefixes. This then allows someone to iterate through all the parts of a path by doing:

```
match path.root_path() {
    None => { }
    Some(root) => { ... }
}
for component in path.components() { ... }
```