added compute function to Feature2D (dirty workaround for #2699)
added initialization of Moments.nu** params in completeMomentState( Moments* moments )
restored utility.hpp
Moments.nu** fields initialized in completeMomentState( Moments* moments )
refactored VideoWriter class (convert it to abstract interface)
refactored VideoReader (convert it to abstract interface)

also refactored VideoSource interface (made it simplier, now it has only 2 abstract methods)
switched to Input/Output Array in gpu::add
switched to Input/Output Array in gpu::subtract
added arithm_op function to reduce code duplication
switched to Input/Output Array in gpu::multiply
switched to Input/Output Array in gpu::divide
switched to Input/Output Array in gpu::absdiff
switched to Input/Output Array in abs, sqr, sqrt, exp, log, pow
switched to Input/Output Array in gpu::compare
switched to Input/Output Array in bitwise logical operations
switched to Input/Output Array in shift operations
switched to Input/Output Array in min/max operations
switched to Input/Output Array in gpu::addWeighted
switched to Input/Output Array in gpu::threshold
switched to Input/Output Array in cart<->polar operations