defactor called_as for one less sub call
don't check caller unless needed
Fix bugs handling "C:\" and other Win32 roots

We strip a trailing slash to get splitpath to give us a basename,
but we can't do this for root paths.  Old algorithm didn't account
for C:\ or \\server\share\ type roots.

I think this is still buggy for raw \\server\share (no trailing slash)
or degenerate UNC paths, but I don't know how much logic I care to put
in for that use case.  Ditto for "C:" except that has a meaning
which is cwd on that volume.
Fix Win32 root path handling

Bare volumes "C:" get expanded to getdcwd() for that drive.

UNC volumes get trailing slash restored (since canonpath strips it)
fix win32 volume root normalization and test it
Document drive expansion on Windows; update Changes and META
run perltidy
bump Changes