Add basic support for online video processing

Add StreamTransform which represents applying a series of transforms to some
sequential input (e.g. a video). Handles reading video frames in and processing
them as they become available (rather than loading the entire video into memory
before processing it). The basic idea is a pipeline model, every child
transform of StreamTransform is run by a separate thread, (as is reading in
video frames). A thread waits for a frame as input, when input becomes
available performs its operation, and then places the frame on the following
stage's input buffer. Single threaded processing is not yet implemented.

Moved CompositeTransform to openbr_plugin.h
Add ContractTransform -- combines all input templates into a single template
Preliminary handling of time varying transforms in DistributeTemplateTransform,
the current behavior is not actually correct but will work for the single input
case.
Add a QT based transform for displaying images

Add Show2Transform (should replace ShowTransform eventually), which displays
input images using QT, rather than going through openCV.
Additional modifications to support doing this (since qt is quite particular
about how GUI elements are created/modified). Create a QApplication instead
of a QCoreApplication (if not building BR_EMBEDDED), restructure br.cpp's main
to run its main work in a separate thread while the main thread sits in an
event loop.
Merge pull request #29 from biometrics/stream_processing

basic support for online video processing