use File::Spec::Functions
reimplement File::Spec functions we care about
fix rel2abs and handle windows drive-relative paths