Shared gl context

@aashish24 These are the VGL changes I need to make to allow GeoJs to share a single viewer. Please take a look. I'm not sure that the viewer should be creating the renderer as it currently does, for the moment I didn't change this, but I think we should discuss.