Implemented high level support for dependence on other suites.

Addresses #290. Suite graph notation "foo<SUITE.TASK> => bar" means bar
triggers off local task foo, which automatically polls for the finished
state of TASK in SUITE. Polling parameters (host, interval, timeout,
status to poll for, cycle offset) are set under [runtime][foo].
Change suite-state polling notation: suite.task to suite::task.

The dot delimiter clashes with cylc's hierarchical suite names.
Moved remote task status into graph notation.
Mirror suite-start args in poll task runtime
Fail manual command scripting in auto suite polling tasks.
Graph node labels for suite polling tasks.
Merge branch 'master' into 290.dependence-between-suites

Conflicts:
	lib/cylc/cylc_xdot.py
Merge branch 'master' into 290.dependence-between-suites
Changed default suite polling interval to 1 min.
Better error message for auto suite polling validation.
Merge branch '290.dependence-between-suites' of github.com:hjoliver/cylc into 290.dependence-between-suites
partial...
Merge branch 'master' into 290.dependence-between-suites

Conflicts:
	conf/suiterc/runtime.spec
	lib/cylc/config.py
	lib/cylc/task_types/task.py
Finished previous conflict resolution.
Merge branch 'master' into 290.dependence-between-suites

Conflicts:
	lib/cylc/cfgspec/suite_spec.py
	lib/cylc/graphnode.py
cylc testing: add restart tests
cylc testing: alter debug
Merge branch 'master' into 290.dependence-between-suites
Finishing off 290...
A --wait option for the stop command.