dbohdan 2015-03-11: with-path is to cd what withOpenFile is to open.
proc with-path {path code} { set prevPath [pwd] cd $path uplevel 1 $code cd $prevPath }