Another refactor of Flow lifecycle.
- diffFlow made a private static function
- applyConfig now diffConfig - which returns a diff object that
can be passed to .stop/.start to be properly applied
The editor ensures config nodes appear first in the flow file. The
code in the runtime and editor assumes this to be the case, so that
when a node is instantiated that requires a config node, it can assume
the config node already exists.
This change allows a config node to appear in the flow file after a
node that wants to use it. In both the editor and runtime, the code
now scans for config nodes and handles them first.