Allow state tracking for drivers that invalidate context and surfaces on eglDestroyContext
Created by: jnettlet
This is a code jumping off point to further the discussions related to #166
I believe that tracking the state on eglDestroyContext is the most true to libglvnd standards that we can implement. This does fix our existing driver issues, while leaving the default codepaths un-altered, except for of course the eglDestroyContext which now is handled by libglvnd rather than being a straight pass through.