graphics: prefix enums with proper context

Seeing DEFAULT can mean anything and may clash with others, hence
prefix enums with a context.
shader: use an enum instead of #define for attributes index
shader: remove useless variable
treewide: introduce streq macro

It makes the code easier to understand
log: add log_oom_and_exit() function

It will avoid future duplication of "Out of..." strings and exit() calls
event: fix resize event

The callback for the resize event would have never been called because
event.type can't be equal to SDL_WINDOWEVENT_RESIZED, we need to check
for SDL_WINDOWEVENT and then check in event.window.event.
event: remove useless typedef
audio: add pitch manipulation

music:set_pitch(1.5)

sound:play(1, 0, 0, 1.4)
doc: document pitch manipulation and music:pause()
use appropriate type
audio: add set_volume for Music
audio: use alGetString instead of our own error to string function
audio: prefix functions with audio_

It adds a sort of namespacing for C functions which increase
readability, avoid name clashing and it is more coherent with the rest
of the code.
audio: fix pitch setting for music
drystal.lua: add math.clamp
drystal.lua: add math.aabb and math.inside
drystal.lua: add new_timer
cmake: be compatible with older version of cmake

Escaping newlines seems to be for recent versions
runner: add option to disable modules

Example:
./tools/runner.py native -D font graphics event particle audio -- ./tests/storage/main.lua
dlua: remove useless macro