TODO
====

- Possible create 'nicer' exceptions based on a base transmogrifier exception

- Sprinkle helpful logging statements throughout

- Create default utility sections:

  - 'path' creation (insert Folders into the pipeline wherever required)

  - alternative path strategy: delay items until parents have been seen.

  - A logging section (log selected or all keys to a logging target (Z2, file,
    syslog, etc.) with configurable log level)

  - Black box? Section that encapsulates a single pipeline for the purposes of
    encapsulation and reuse.

  - Fail-safe default section: alter path to a leftover path if the path
    doesn't exist.

  - marker interfaces

  - Unique path generator. If a path has been seen before, append an integer
    until it is unique again. Check against an internal list or against the
    context.

- Provide a UI for selecting and running pipelines

- Perhaps utils.Expressions should grow an TAL iterator-like interface? YAGNI?
