create separate task categories
make the attachment arg const
add blur effector
rename effector class to simply node
create source and effector node derived classes

Mechanisms largely inspired by Rich's Cinder-Audio2 work -- a basic mechanism to allow for node connections has been added, though it is not yet used yet. Later the Pipeline will handle node tree traversal for rendering.
slightly clarify project summary
use TextureRef instead of just a Texture
add naïve mechanism to evaluate a node

The pipeline is the render coordinator and first walks the tree from the selected node upward, and then constructs a list of branches that need to be evaluated; a dependency chain of sorts.

A few assumptions are made, for nodes with multiple inputs like a blending operation, the first input node is the primary and the second input node is the alternate. The branch list is constructed and evaluated very carefully to maintain the proper ordering.

It is also worth noting the FBO behavior - a single FBO with multiple-attachments is employed rather than creating and using separate FBOs. This minimizes resource use and performance penalties of framebuffer binding. At the rendering phase, the FBO is bound once.

The Pipeline's FBO uses 3 attachments and will ping-pong through them when possible. At most a node only allows for 2 node inputs so having 3 attachments should allow evaluation of arbitrary trees without any need to pull textures out of the FBO. When rendering, the attachment written to is fetched from a list of available attachments - when rendering a branch is complete, the attachment is pushed on a stack and then popped when

Node connections and chains are currently unvalidated, so cycles could be present as well as poor connection structures; tread lightly.
add first pass at an ASCII visualization of a render tree

Some sort of custom naming should be exposed.
Add names to nodes for ASCII visualization