I'm not sure the behaviour of ZnUrl>>#closePath is the desired one. 

'http://foo/a/b/c/' asZnUrl closePath 

gives 

http://foo/a/b/c//

It adds a slash if the #isSlash returns false. #isSlash indicated only the server root and not (what I was thinking) it returns true on trailing slash.
IMHO #isSlash should be a test for trailing slash and #isRootPath should be a test for a non-existing or / path.

Norbert