added GpuMat::Allocator interface
added BufferAllocator
added BufferPool class
moved BufferPool management functions to public
now Allocator accepts GpuMat* instead of 3 pointers
Merge pull request #1575 from jet47:gpu-buffer-pool