Hide members of collapsed families properly in graph view.

Also renamed some misleadingly-named variables that dated back to before
we had collapsible families.
Wait for job file to properly close

Should prevent errors such as:
    /bin/bash: SCRIPT: /bin/bash: bad interpreter: Text file busy
Adapt graph to recently changed var names.
Merge branch 'master' into 558.gcylc-hide-fam-members
Run Popen with close_fds=True to submit job script

This should prevent the process from hanging on to the file descriptor
for writing the job script, the root cause of the text file busy error.
Add comment on close_fds=True for job submission
Merge pull request #585 from matthewrmshin/lsof-jobfile

Submit job file with close_fds=True

This is to ensure that the process properly closes the file descriptor that was used to write the job file. Otherwise, the execution may randomly fail with a `text file busy` error.
Merge pull request #568 from hjoliver/558.gcylc-hide-fam-members

Hide members of collapsed families properly in graph view.
Don't attempt to ungroup non-family graph nodes.
Merge pull request #587 from hjoliver/586.fix-ungroup-non-fam-node

Don't attempt to ungroup non-family graph nodes.
Fix case where entire pre-initial cycle conditional eliminated.
Fix whitespace.
Merge pull request #588 from arjclark/pre-initial-fix

pre-initial cycling simplifier: fix entire conditional elimination bug
Overhauled task insertion functionality.

If a task spawns beyond its stop cycle, the new instance will be
rejected from the task pool rather than added in the held state.
If a spawned cycling task has the same ID as an existing task it
will automatically be rejected from the task pool.
Return spawned tasks (caught by purge test)
Minor tidy of previous commit.
Added pre-initial tests to test-battery.
Added advanced conditional for pre-initial test.
Fix new task proxy insertion.
Print triggering log diffs in test battery.