Project reordering

This is meant to make the project structure a bit clearer.
- reorder the sources folder, to have only the most important (static) classes in the root folder
- subfolders ui (events+interface+hand), io (reading files, sound), utils (helpers, that we probably won't touch anymore), particles (which will also contain helpers for collision detection)
- similar ordering in the shader folder
- separate CMakeLists.txt for the sources and shader folders
- global ParticleScriptAccess instance as static member, not static c-style (whose init order is undefined)