Made the util::Dir append function const safe
Added const specifier to asset_dir argument of audio_manager's
load_resources method
Implemented JobManager to load gamedata resources

The game loads straight away without waiting to load the gamedata and
once the data is loaded continues to behave as it has been doing before
this commit.
Fixed the intialization reorder compiler warning
add debug overlay grid, togglable with F4
Merge pull request #138 from franciscod/debug_overlay_grid

game: add debug overlay grid, togglable with F4
Add .desktop file and generate placeholder icon.
Merge pull request #81 from boombatower/desktop-file-plus-icon

Add .desktop file and placeholder icon.
Fix warnings on 32 bit systems

- Change format specifiers to not make assumptions about integer and
  size_t sizes
- Change audio hash function to shift a different amount based on
  sizeof(size_t)
Merge pull request #151 from blucoat/32bitfix

misc: fix warnings on 32 bit systems
buildsystem: fixed install path issues from #81
util (crossplatform): added subprocess and os files

main methods are:

subprocess::call       (can redirect output and behave in a blocking/non-blocking way)
subprocess::which      (searches for a binary in PATH)
os::execute_file       (calls xdg-open on file)
os::self_exec_filename (readlink /proc/self/exe)
buildsystem: added options system, gperftools

options system:

./configure (usage with --with and --without)
./CMakeLists.txt (specification)
buildsystem/version.cmake (bookkeeping; see 'log_config_option')

the list of enabled options is available in config_option_string in config.h

gperftools:

first option that's using the new system;

gperftools-profiler is automatically linked in if it exists (disable with --without)
gperftools-tcmalloc must be manually enabled (with --with)
buildsystem: fixed verbosity issue with Makefile
added config options to version display

made engine fonts unique_ptrs
buildsystem: made inotify optionally toggleable

use ./configure --without inotify
util: integrated profiler into game_main

press F12 to start/stop profiling
buildsystem: added config.cpp (in addition to config.h)
buildsystem: put Inotify detection into module
buildsystem: made --with switches tri-state (yes, no, auto)