Gave control of work sub-directory to the suite definition.

Addresses #377.
Automatic site/user config upgrade and deprecation warnings.
Tidied task proxy and job submit code a bit.

Includes getting rid of some unnecessary passing of global config items
from the task class into job_submit, and cleaner use of task owner and
host variables.
Improved config upgrade warning messages.
Updated the submit command.
Centralized cylc-run tree creation.
Updated documentation for work and share directories.
Warn and upgrade site config too.
Merge branch 'master' into 377-work-dir-config
Allow for host settings that default to None.
Merge branch 'master' into 377-work-dir-config

Conflicts:
	lib/cylc/task_types/task.py
Correct invisible graph text in the default gcylc theme.
Updated a comment.
Merge pull request #393 from hjoliver/377-work-dir-config

Reinstate work directory configuration to suite definition.
Hot fix for site/user config $HOME replacement in directory paths.

Only affects tasks running under other user accounts on suite host.
Merge branch 'master' into 204.suite-env-file

Conflicts:
	lib/cylc/job_submission/job_submit.py
	lib/cylc/scheduler.py