Fixes the splash screen so that it displays until the game has actually done initial setup and can display GUI elements. This prevents the ugly blank window just sitting there while the GUI loads.
Fixed spacing
Improving CMake build system for power user

* Making it possible to override the project directory location
  by setting TORQUE_APP_DIR.

* Making it possible to skip template installation (copying) to
  project directory by setting TORQUE_TEMPLATE to OFF.
Fix WaterObject loose reflection bug.
Fixed the pure virtual function to be an empty one, which should resolve the linux build failure.

Also tweaked the loading methodology to have the canvas by default assume it should force the window display as soon as it can. You can set the canvas to not do that when it's created via the new displayWindow variable.

This way, old templates and projects should work as normal without changes, while the new templates are built to take advantage of the nicer splash screen arrangement.
Merge pull request #747 from BeamNG/fix_water_reflection

WaterObject reflection fix.
Merge pull request #742 from dahnielson/dahnielson_cmake

Improving CMake build system for power users
Merge remote-tracking branch 'Areloch/SplashScreenFix' into development
Finished up splash screen implementation.

 * Added stub methods for non-Windows platforms
 * Move canvas show to after tools have loaded
 * Fix a tab
Fixed template scripts.
Load new DLL first so old projects don't see odd behavior.
Merge pull request #756 from eightyeight/fix_dll_loading

Load new DLL first so existing projects don't see odd behavior
Merge pull request #755 from eightyeight/fix_splash

Fix splashscreen
Merge remote-tracking branch 'Torque3D-Official/development' into HydroSim