gcylc: update family hierarchy in case of reload.
Added a test to insert a task added by a reload.
PEP 8 for previous commit.
Merge pull request #1209 from hjoliver/gcylc.fix-task-added-by-reload

gcylc: fix task added by reload
Refactor task proxy

Remove task proxy class generation logic. Move `cylc.task_types.task` module to
`cylc.task_proxy` and rename the `task` class as `TaskProxy`. Each task proxy
is no longer its own class, but they all belong to the `TaskProxy` class.

Allow `-`, `+`, `%`, and `@` characters as task names.

Simplify logic in various places.

Reduce memory footprint.

More pep8 and pylint fixes.
Modify `.ident` to `.identify`
Fix broken logic

The logic for handling task removal by reload was not merged in
correctly.