A stopwatch and profiler to get time data for specified openbr transforms

A really basic stopwatch that can wrap any OpenBR transform or aggregated transform such as StopWatch(Cascade(FrontalFace)) or StopWatch(Cvt(Gray)+Cascade(FrontalFace)). Data is stored in file metadata using the "time" key. An optional profiler can be appended to the end of an algorithm to display the time data "Algorithm (with stopwatch) + StopWatchProfiler". 
I don't think this function is necessary. The default implementation will just call project(Template, Template) for each template in the list.