allow setting working dir if engine exe is not in basedir

## functional changes

Previously the code was setting the working directory to be the basedir
(directory containing the id1 folder etc.) which is usually kosher but not
always.

This change adds a configuration option to instead use the directory of the
engine executable as the working directory. The option is visible only if that
executable is located somewhere outside of the basedir.

A couple of examples of the engine not being in the basedir:

- DarkPlaces has so many libraries that I usually like to corral all its files
into their own folder (and use the -basedir command line arg).

- Using Steam.exe to launch Quake through Steam (cf. comments 124-126 at
http://www.celephais.net/board/view_thread.php?id=60441 ).

## code changes

### EngineStarter.java

- Rename quakeDir to workingDir to be more explicit about what it's used for.

### Configuration.java

- Added workingDirAtExecutable, a boolean config var w/ default false.

### QuakeInjector.java

- Accomodate the EngineStarter terminology change.

- Use the workingDirAtExecutable flag to determine which working directory to
pass to EngineStarter. This logic affects both the original creation of
EngineStarter, and also subsequent updates of EngineStarter whenever the
config is changed.

### EngineConfigDialog.java

- In the constructor, build the necessary widgets for the new option. The
boolean flag is exposed as a pair of radio buttons so that we can be explicit
about what the two choices mean.

- Add the call to fetch the option value from the widgets.

- Implement the logic for hiding/showing the new option. We'll show the option
if and only if the exe location and basedir are valid & different.

- Trigger the option's hide/show logic at the end of the constructor, as well
as whenever the exe location or basedir are changed.
typo fix workdingDirBlurb -> workingDirBlurb
Merge pull request #90 from neogeographica/engine_working_directory

allow setting working dir if engine exe is not in basedir