Windows: Define _CRTDBG_MAP_ALLOC if debugging

RegenerationDialog.cpp
galaxql.cpp
sqlqueryctrl.cpp

- Define _CRTDBG_MAP_ALLOC if _DEBUG and it's not already (pre)defined.
When this preprocessor macro is defined heap functions are mapped to
their debug versions. It is no longer defined by wxWidgets. It may be
predefined depending on a project's config but I prefer to be certain.
Windows: Update legacy app.vcproj for wxWidgets 3

.gitignore
README_WIN.txt
app.vcproj

- Ignore .ncb files.

- Change lib prefix from wxmsw26 to wxmsw31u.
The u is now necessary for UNICODE builds.

- Change dir prefix from C:\wxWidgets-2.6.3\ to a more generic
C:\wxWidgets\.

- Enable Run Time Type Info (RTTI).
By default wxWidgets is built with RTTI and there cannot be an RTTI
mismatch between the app and the static libraries it links to.
http://trac.wxwidgets.org/ticket/16431

- Create GalaXQL.dat as a post-build event.

- Change SQLite3 reference from individual source files to amalgamation.

- Remove reference to non-existent icon1.ico.

- Remove libc.lib from being ignored as a default library.
Ignoring libc isn't necessary; if it is then something's wrong and that
should be brought to the developer's attention, not ignored.

- Add a legacy warning (README_WIN.txt) and reference it in the project.
Add preference and restart capabilities

app.vcproj
contrib/VS2010+/GalaXQL/GalaXQL.vcxproj
contrib/VS2010+/GalaXQL/GalaXQL.vcxproj.filters
makefile

- Reference Preferences.cpp/h in project files.


galaxql.cpp, galaxql.h
======================

(GalaxqlApp::OnInit)
- Store the executable's file path in global variable 'g_appFileName'.
- Create the preferences table if it doesn't exist, before the main
window is created.
- Restore the preferences after the main window is created and the
galaxy regenerated.

(Galaxql::Create)
- Remove default chapter selection.
Default chapter selection is now handled in RestorePreferences().

(Galaxql::CreateControls)
- Add a menu entry to reset GUI and session preferences.
- Add a menu entry to reset everything and restart.

(Galaxql::RegenerateWorld)
- Create the preferences table if it does not exist and do not delete it
when regenerating.

(Galaxql::OnResetPrefsClick) New.
- Wrap ResetPreferences().
Event handler for menu entry to reset GUI and session preferences.

(app_start) New.
- Launch GalaXQL.
This function is meant to be called on exit set via atexit() if
necessary to restart the application.

(Galaxql::OnResetAllClick) New.
- Delete galaxql.db and restart the application.
Event handler for menu entry to reset everything and restart.

(Galaxql::OnChapterselectSelected)
- Save the selected chapter as a preference.

(Galaxql::OnMenuglowClick)
(Galaxql::OnMenulowqualityClick)
(Galaxql::OnNormalrenderClick)
(Galaxql::OnRendergridClick)
- Save the selected graphics rendering as a preference.


Preferences.cpp, Preferences.h
==============================

- New. Functions to handle preferences.

(CreatePrefsTableIfNotExists) New.
- Create the prefs table if it does not exist.

(GetPreference) New.
- Read a preference from the prefs table.

(SetPreference) New.
- Write a preference to the prefs table.

(RestorePreferences) New.
- Read all preferences from the prefs table and apply them to the
application. If a preference does not exist use its default value.

(ResetPreferences) New.
- Recreate the prefs table and apply the default preferences to the
application.


This commit closes a sourceforge ticket:
"Add persistent user preferences"
http://sourceforge.net/p/galaxql/tickets/11/