First crack at TransformNodes. They don't do anything yet.
Merge branch 'develop' into transformNodes
Optimize GC in draw by no longer making an 'options' object
Fill out Transform Nodes functionality
- Render transform node output, in node or in following node
- Remove old transform methods and data
- Change srsSize uniform to vec2 "resolution"
Update plugins to support new transform nodes
Merge branch 'develop' into transformNodes
Calculate all node sizes implicitly by source size
Misc. bug fixes and improvements for rendering Transform Nodes
- inPlace can be a function that gets called for each source on every draw
- Only set dirty on input if value is different
- call optional `update` method on effect node inputs
- separate `renderDirty` property for rendering textures on transform nodes
Remove setters to change width/height on Effect nodes
It wasn't doing anything anyway. Also, fix size on video source nodes.
Rename internal node method setSize to resize
Rebuild 'blend' effect to work with transformNodes
- new input 'sizeMode' to determine how node dimensions are calculated
- use native OpenGL blending for 'normal'

todo: investigate using native OpenGL blending for other blend modes
Fix Source dimensions for videos, arrays, textures
Update resolution uniform on Source node resize
Fix readPixels on Source Nodes

Allow FrameBuffers to use existing textures, so we don't have to double-draw source
nodes on readPixels. It's unnecessary now anyway, since you can't transform source
nodes anymore.
Transform Nodes now can be destroyed
Set correct resolution uniform on Target nodes
Update unit tests for transform nodes
Put render callbacks back in...for now
Unit tests check transform destroy()
Prevent crash when rendering transform nodes that don't have a source