Parents should be frozen after creation.

Use a tuple to ensure that the parents list
can not be mutated after flow creation.

Change-Id: Ic2a0ed73a2a7211184deb92d57720ff417429dca
Provide the length of the flows.

Its useful to be able to check if a flow contains
anything by just inspecting the len() of the flow.
This can be used to avoid running a flow in the
first place if nothing is in said flow.

Change-Id: Ibfea7f10fc67d5dd3ddfa6f6fe6c08805562998a
Add a way to use taskflow until library stabilized.

In order to encourage taskflow adoption, take a hint
from oslo-incubator and have a similar update.py script
that will allow users of taskflow to selectively pick up
flows and there dependencies for usage in there own projects.

Example run:

$ python2.6 update.py  --base cinder --dest-dir /tmp/cinder_test --primitives flow.linear_flow

Copying module 'taskflow.decorators' -> 'cinder.taskflow.decorators'
  '/tmp/cinder_test/cinder/taskflow/' (new)
  '/tmp/cinder_test/cinder/taskflow/__init__.py' (new)
  'taskflow/decorators.py' -> '/tmp/cinder_test/cinder/taskflow/decorators.py'
Copying module 'taskflow.exceptions' -> 'cinder.taskflow.exceptions'
  'taskflow/exceptions.py' -> '/tmp/cinder_test/cinder/taskflow/exceptions.py'
Copying module 'taskflow.patterns.base' -> 'cinder.taskflow.patterns.base'
  '/tmp/cinder_test/cinder/taskflow/patterns/' (new)
  '/tmp/cinder_test/cinder/taskflow/patterns/__init__.py' (new)
  'taskflow/patterns/base.py' -> '/tmp/cinder_test/cinder/taskflow/patterns/base.py'
Copying module 'taskflow.patterns.linear_flow' -> 'cinder.taskflow.patterns.linear_flow'
  'taskflow/patterns/linear_flow.py' -> '/tmp/cinder_test/cinder/taskflow/patterns/linear_flow.py'
Copying module 'taskflow.states' -> 'cinder.taskflow.states'
  'taskflow/states.py' -> '/tmp/cinder_test/cinder/taskflow/states.py'
Copying module 'taskflow.utils' -> 'cinder.taskflow.utils'
  'taskflow/utils.py' -> '/tmp/cinder_test/cinder/taskflow/utils.py'

Change-Id: Ib4e6299bdae737e2759f22b1eff35c344bb8beb2
Merge "Provide the length of the flows."
Merge "Add a way to use taskflow until library stabilized."
Show file modifications and fix dirpath based on config file.

Change-Id: Iad230d4d565ad9eab3f54f490aff1c1d1b308ab7
Fix two minor bugs in docs/examples

+ taskflow path in sys.path

+ listener => notifier

Change-Id: I0a657540571f9862e2adea5a40d03dfa3ce90e2b
Fix minor code style

Change-Id: Ib051581cd820cbb478b95b1b4421adb2b577567d
Fix typos in test_linear_flow.py and simple_linear_listening.py

Change-Id: I8704143682437097d148f076547e575fd85dc687