Give Distribute better support for handling timevarying transforms

Introduce 'pseudocopy' operation which, which if called on a time-invariant
transform, returns the transform, but if called on a time-varying transform
returns a copy of the current state of the time-varying transform. Composite
transforms apply pseudocopy to their children (if they contain any time-varying
transforms).

Introduce a wrapper class that uses Resource to let time-varying transforms act
like time-invariant transforms, currently only used by distribute (it is
assumed that any work that is being distributed is in fact independent).
Move some functionality from openbr_plugin.h to openbr_internal.h

Move CompositeTransform, and several other categorical abstract transform types
to a new file, openbr_internal.h. Adjust files in plugins to include the new
file rather than incldue openbr_plugin.h directly.
Rename pseudoCopy to smartCopy, add additional comments
Merge pull request #39 from biometrics/distribute_update

Give Distribute better support for handling timevarying transforms