Add support for changing buffer input size in CLProgram

* New CL memobjects are now allocated if input dimensions change