Fixed missing precondition to `make_from_separator' to ensure that argument is not Void when compiled in non-void-safe system.


git-svn-id: https://freeelks.svn.sourceforge.net/svnroot/freeelks/trunk@735 6d4a7a74-6026-0410-acef-abb7cea3cd6d
Updated PATH to
- normalize path when they come from the outside. Normalization removes double directory separator.
- clarify what is a root
- provide better contracts for `extended', `extended_path', `appended' and `append_with_extension'.
- simplified implementation for looking up content of `storage'
- rmproved efficiency of `components'
- removed `is_representable' since `name' can represent any type of wrongly encoded paths.
See review#9272053.
Updated `{DIRECTORY}.recursive_create_dir' so that it benefits from the new improvements of PATH so that it can always create an absolute path if permissions allows it (be it a path like C:foo or \\server\share\foo).


git-svn-id: https://freeelks.svn.sourceforge.net/svnroot/freeelks/trunk@736 6d4a7a74-6026-0410-acef-abb7cea3cd6d