multiple kernels + memobject, now we need the defShader and the new ShaderProgram etc. before we can talk about ins and outs of the shaders.