added rename and noclobber functions