use GstContext for GstGLDisplay propogation

implements the hooks required in GstElement::set_context and the context query
use the allocation query to propogate GstGLContext

uses the GstVideoGLTextureUploadMeta api type for the query
upload: add support for GstVideoGLTextureUploadMeta
Remove texture scaling artifacts from the TEXTURE_RECTANGLE -> TEXTURE_2D transition

fixes the funky colours in some of the yuv formats
glmem: report successful copy to the caller