glsyncmeta: don't glFinish() everytime a sync point is set
At minimum, we only need to glFlush() if we are in a shared GL context environment. Move the glFinish() to when the actual wait is requested which may be never. Improves the throughput on older GL systems without GL3/GLES3 and/or fence sync objects.