gpuimgproc module refactoring

* Switched to Input/Output Array.
* Converted Canny, Hough transform, corner detection and template matching into Algorithm