Skip MSVC-specific test when vsvars32.bat has not run yet

You need to run vsvars32.bat from the correct directory before you can
use Microsoft Visual Studio's command-line tools. A tell-tale is that
the 'DevEnvDir' environment variable is set after said batch file ran.
Before that, there is little point in testing the linker version
because the linker itself will not be found.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Only use .def files with MSVC's linker for now

Apparently, gcc on Windows understands the -Wl,--output-def,<def-file>
parameter, but in general we should not hard-code parameters in the
Linker class which are specific to only one of the supported linkers.

A future commit should move the .def file handling into the sub
classes, preferably as a method with a path to a single .def file as
a parameter which does nothing in the Linker class, but only in the
subclasses which know how to treat .def files.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>