Refactor to keep the Docs directory clean from temp. build files.

- Move the temp. build files for documentation building to its own build directory.
- Add new build option to include documentation build as part of the normal build (not enabled by default).
- Document the documentation building process.
Clean up the documetation.
Added "Is Playing" attribute to SoundSource. SoundSource no longer clears the sound resource when playback is finished. Closes #54.
Updated comment.
Fix minor typo error.
Build Lua and LuaJIT standalone interpreter and bytecode compiler.

Use the internal standalone lua/luajit interpreter for dumping LuaScript API doxygen file.
Clean up build script.
Fix documentation build on platforms that do not have tool targets.

- Prevent 'make clean' or its equivalent to remove the generated ScriptAPI.dox and LuaScriptAPI.dox in the 'Docs' subdirectory.
- Always refresh the generated API Doxygen files before building 'doc' target when the tools are available.
- Move document-build binary directory into the respective project main binary directory.
Only use natively built tool for dumping API to doxygen files.

(Pardon the dust)
Retired the unused DocConverter utility.
Fixed distance update for Drawables for draw distance & shadow draw distance checks. Closes #56.
Append FileSelector filter extension in editor when saving files, if no extension entered to filename. Closes #57.
Lower user-created UI elements' priority. Closes #60.
make AngelScript an optional module, you can use -DENABLE_ANGELSCRIPT=0 to disable it.
Added Random() & RandomInt() script functions with min & max range parameters. Similar to the RandomInt(range) overload, in RandomInt(min, max) the max value is exclusive. Note that the corresponding C++ functions are simply called Random for both int and float versions. Closes #48.
Added world position & normal to RayQueryResult.
Added inner and outer angle parameters to SoundSource3D, which makes it possible to do cone-like directional sounds. Fixed sound attenuation if near and far distance are the same. Closes #49.
Fixed logic bug in Audio subsystem related to mixing fragment size. Fixed uninitialized dataSize_ member in Sound.
Fixed unnecessary duplicate boundingBox_ member variable in DecalSet.
Make resource dirs absolute when added to ResourceCache. Sanitate away /./ construct from the runtime program dir and resource dirs. Closes #64