Add a new 'path' type, for filesystem paths.

Allows to properly handle ~user expansion for all paths.

See issue #980.