Ran the include what you use tool, made a lot of refactorings, fixed a lot of stuff

Removed the redundant GL20 static variables, removed some undefs that were annoying, added enum classes to the Pixmap family
and improved security against macros by duplicating the name inside the enum
Many improvements on the Linux OpenAL stack.

Rewrote a bunch of operations, added checks on most calls. The openAL backend should be merged
and used on all platforms as one thing.