Fix barrel flash

The barrel sprites didn't have a smooth flash. The different brightness
levels were there, but in a bad order. I sorted the sprites around to
give a smooth flash.
Add global game flags / allow player to restart level

I added a global flag system so that the menu can flag actions
(restart the level, exit the game, etc.). I coded the menu actions for
"restart level" and "exit game" to set flags. I also added a method for
restarting the level that is called when the GAME_RESTART_LEVEL flag is
set.
Organize game files

I moved all the files (except for toadman3.bas) in the root folder into
a new "game folder. This folder is to hold files related to game logic.

I also created a Game_Session class to hold all of the objects and
properties of the game currently in play.
Update title and game background

* Adjusted colors
Update Level 2
Add message popups for flamethrower, jump boots, and blue flame

* Needed to tell player what they just got and how to use it
Update font

* Added drop-shadow and light shading
* Added background color to font sprites file -- no need to update code
  when the changing the background color
* Removed GFX_ColorReplace() -- no longer needed -- was only used to
  change the font background color
Simplify pop-up messages for item pickups

I did this because the old messages were taking up too much of the view
area. I've reduces most to one-line messages.

It also looks better to show less, and the player can instantly get the
message without having to read/scan three lines.
Change foxtail sprites to iceberg sprites

Foxtails don't work in a snow/ice themed level.
Rename Level 2

I didn't like "The Bayou".
Keep Keys

The idea was that each key broke after unlocking a door, but this is
counterintuitive and can cause some confusion at first. So I changed the
logic for the keys. This won't affect the level design much; I just need
to add some more key and door types.

* Keep key after door is unlocked
* Reset keys at start of each level
Add Stone Key

* Added sprites and logic
Change Key Theme to Cool Colors

I changed the key and door sprites from the material-based theme (ice,
wood, stone) to a simpler cool-colors based theme (blue, white, green).
Reset green key ( key3 ) after map load

I forgot to do this when I added the green key (formerly known as the stone
key).
Add icons for keys

* Added sprites
* Made icons show when keys are acquired
Add Key4 / Door4

* Added sprites and icon
* Added logic
Correct include path for map editor

This broke when I moved some source files over to the game folder
(see commit 15416e2).
Update levels to work with new key logic

The changes in commit f91906f ( Keep Keys ) made some of the key and
door layouts obsolete. I updated the levels to accommodate this change.
Extend global animations

The global animations weren't applying to all sprites, so some of the
higher-up sprites weren't animating. Each animation index covers 32
sprites. The array only went up to five, so sprites >= 192 (32*6 -- six
indexes including zero) were not animating.

I extended the array so that all 256 sprites are covered by the global
animations.
Add flamethrower ammo back

I wanted to add this back. Having finite ammo adds more depth to the
gameplay. I set the max ammo high so that the pace of the game can keep
up and not be constantly broken by the need to collect ammo; it's just
a matter of balance.

* Made ammo qty reduce as flamethrower is used
* Blocked player from firing with insufficient ammo
* Set ammo to max when flamethrower is picked up
* Reset ammo at end of level
* Added status bar to show ammo amount
* Added event for ammo pickup