Improve the xolox#misc#path#* functions

 - xolox#misc#path#absolute() was completely rewritten. It no
   longer uses fnamemodify() which doesn't work on non-existing
   pathnames. It's now written on top of xolox#misc#path#split()
   and xolox#misc#path#join(). It should now properly normalize
   directory separators as suggested in this pull request:
   xolox/vim-session#29

 - xolox#misc#path#split() and xolox#misc#path#join() were
   enhanced with proper handling of UNC paths and respect
   for the 'shellslash' option on Windows (tested on Windows
   XP SP2, the only Windows I have available)