Setting maximum and initial heap sizes (testing RFE 1633152)

It’s long been a problem that we can’t set the maximum (and also initial)
heap size from within VASSAL. I figured out how to do that today. In this
build, you can set the heap sizes from the General tab of the Preferences.
The settings don’t take immediate effect, but will be picked up the next
time you start VASSAL.

Here’s the build:

nomic.net/~uckelman/tmp/vass … vn2850.zip

How I did this:

Instead of starting VASSAL.launch.Main, VASSAL.exe, VASSAL.bat, and
VASSAL.sh now start VASSAL.launch.Launcher. The (new) Launcher class
reads the user prefs to see if maximumHeap and initialHeap are set.
Then it constructs a platform-appropriate command to launch VASSAL,
which it runs via a ProcessBuilder, and exits. This works because
Processes started from ProcessBuilder don’t die with their parent.

The Launcher class is only 60 lines of code, so there’s not much
maintenance burden there. The only downside is that it now takes
about a half-second longer to start VASSAL because the JVM has
to be fired up an additional time.