Added source_root field to struct site.

The source root is the directory where the sitedef file and other
source files reside.

Added a source_path field to struct file.  TODO: implement file copying
in file_write().

Added path_alloc_dir_part() function for extracting the directory part
of a path.