'Splits off the initial component of the given path.
This function is needed since on Windows, the first component of a
path (usually indicating a drive) needs to be treated
specially. Even though there are many ways of specifying paths on
Windows, we only support the syntax c:\file.
Args:
path: The path to split.
Returns:
A tuple, first component and remainder.
Raises:
ValueError: The path format was not understood.'

def _SplitInitialPathComponent(self, path):

    if (platform.system() != 'Windows'):
        return ('/', path)
    if ((len(path) >= 2) and (path[1] == ':')):
        return ((path[:2] + '\\'), path[2:].lstrip('\\'))
    raise ValueError(("Can't    handle    path:    %s" % path))
