Handle reintroductions

In OpenGL 3.1 quite some enumerations constants and functions were deprecated Some of these were reintroduced in the core in a later version of OpenGL. This introduces some problems as detailed in #2. These changes try to alleviate these problems, though at the cost of significant extra complexity.

Currently only `ARB/Compatibility.hs` is amended and the core modules are still the same. As noted in #2 fixing that would probably have quite some impact.