viewport: Allow left mouse button to be used for dragging

This is needed for touchpads that do not have physical secondary mouse button.
audio: Add MIDI_TRACK_NONE enum member
gfx: Set sprites to NULL after unload
Allow SDL_mixer support to be optionally disabled
Merge updates from release-0.1.1

Allow music and sound effects using SDL_mixer to be optionally disabled at compile time.
player: Fix bug where uninitialized timers_count causes crash
gfx: Abort loading data file if it is compressed
map: Deallocate map data before loading new map

Also deallocate everything on program exit.
viewport: Properly deallocate previous landscape tiles when reinitialized
viewport: Allow left mouse button to be used for dragging

This is needed for touchpads that do not have physical secondary mouse button.
player: Fix bug where uninitialized timers_count causes crash
sdl-video: Work around SDL bugs in AmigaOS
Merge fixes from release-0.1.1 branch

SDL fixes to allow AmigaOS support
serf: Add proper name for SERF_TRANSPORTER_INVENTORY
audio: Clean up init and deinit functions

Rename audio_cleanup() to audio_deinit() for consistency.
Move audio initialization to main().
Port to SDL2 and SDL2_mixer

This is just a simple substitution of SDL2 for SDL, no improvements have
been made to take advantage of the new acceleration framework in SDL2.
Everything is still rendered to a screen in main memory and then
transfered to a texture just before being moved to the screen. Ideally
the new texture feature should be used for sprites but that will require
some rework of the sprite caching and rendering, in particular the
landscape tiles.
Remove map tile caching

There is no longer a huge need for caching the triangular map tiles as
the larger landscape tiles are prerendered and cached now. In addition it
makes it harder to move to the new SDL2 textures, so removing it.
Fix #149: Increase viewport scroll speed when using keyboard
Fix #141: Close notification box on escape key