Initial commit
Menu added.
Fixed some pixel corruptions and a segfault on finish the last level.
New menu added under the name of "Restart map".
The first ten maps are added from the original game.
Added some configure script compiler checkings.

Configure script configure.sh now checks for compiler availability
before creating the Makefile. There is a check for the default compiler,
fatal error comes up if it fails. Per target compiler checks were added
as well, these doesn't mean fatal errors, just warnings. In case of an
unavailable per target compiler the target gets only skipped.
A check was also added for the new compiler prefix setting. Compiler
prefix means a command which is invoked in front of the compiler command
line, for example ccache. (Default setting is ccache)
A missing last-pointer update fixed.

A missing last-pointer update fixed in the list handler.
Hungarian comments were translated to English.
Make main_loadmap more intelligent.

main_loadmap first checks if the asked map can be loaded before it calls
free_map for the current one. So if the requested map doesn't exist the
current map won't dispose.
Minor fixups in the graphic module.

grRGB is a function pointer from now, there is no need to switch inside
that function. When setting up the surface grRGB gets the appropriate
value.
New map selector.

A new map selector method added. This includes a new module called
inval, and a new menu called "Select map". When the user selects this
menu, she will be asked to tell if she wants a number greater or lesser
than the number offered. She can select using the up and down keys. This
method works like a binary search algorithm. My goal with this is to
avoid using the number keys. (Remember that we develop for PDA.)
Refined message handling.

The original polling based message handling wes replaced by a new
SDL_WaitEvent based one. The main() function was also partitioned into
three minor component. (init, done, and run)
Count maps.

A map counter function added because the map count is needed at the map
selection.
Fixed a bug in the map loader.

A check added to verify if a map is large enough. If a map has a width
or a height less than 3, then it is ignored.
Show info about the current game state.

If there is an active game, then a short info bar is showed under the
menu. The number of moves and pushes are counted, and printed there.
New maps and improved loader functionality.

The first 15 maps are in. The map loader now understands two new field
types: destionation field with a box already on it, and destination
field with player on it. (Map 15 uses the first one.)
Map-finish detection improvements.

Replaced the old O(n) map-finish detection algorithm with a new O(1)
one. This is done by looking at the boxes at every push, and notice when
a box has been pushed into a destination place.
Center map on screen.
Map loader has been moved to a new method map_load().
Merge branch 'master' of github.com:Kodest/soko