mkdirhier now takes filename not path