core: Separate user sites, user modules and global config from the priv/ directory

Fixes #767

See https://github.com/zotonic/zotonic/issues/767 for the full
specification and discussion.

The zotonic.config file is now search for in $HOME/.zotonic/<version,
$HOME/.zotonic, /etc/zotonic/<version>/ and /etc/zotonic.

The directory where user-defined sites and modules are searched in are
now defined in the user_sites_dir and user_modules_dir config
variables. These defaults to $ZOTONIC/user/sites and
$ZOTONIC/users/modules, respectively.

The "zotonic enablesite" and "zotonic disablesite" commands are removed.

The compilation of zotonic is now handled in the zotonic_compile.erl
module instead of in the Emakefile (due to the variable nature of the
user_sites_dir we can no longer use an Emakefile with hardcoded paths).

Compilation of Zotonic is now done in a few parallel worker processes,
to speed it up.