Site config host matching by regex, not ordered.
Use OrderedDict everywhere to maintain order of parsed config items.

And don't use where not necessary, in the config file spec modules.
Documented site config host matching.
Host matching doc update.
Add missing method to Daily cylcing module. Closes #639.

Also fixes another bug: daily step size reported in days not hours.
Other cycling modules checked as ok.
Merge branch 'master' into 212.site-host-pattern

Conflicts:
	lib/cylc/cfgspec/suite_spec.py
Merge pull request #638 from hjoliver/212.site-host-pattern

site config hostname pattern matching
parsec.fileparse: allow empty values

Previously empty values are treated as undefined.
Merge pull request #642 from hjoliver/639.daily-cycling-offset

Add missing method to Daily cycling module. Closes #639.
Merge branch 'master' into fix-undef-empty-value
Added reload test suites (but not logs for one-offs).
Added validate test for Daily/Monthly/Yearly
Added shutdown tests for cycle and task.cycle
Merge pull request #648 from matthewrmshin/fix-undef-empty-value

parsec.fileparse: allow empty values
Future trigger final-cycle check should ignore async tasks.

Else get an illegal cycle time error. This only applies if the suite has
a stop cycle.
Merge pull request #649 from hjoliver/mixed-suite-reload-revisited

Future trigger final-cycle check should ignore async tasks.
Merge remote branch 'upstream/master' into add-reload-test
Generated reference logs.
gcylc: fix viewing the suite err file
cylc/cylc#645: fix ungrouped views user config setting