This revision changes the implementation of CURRENTWORKINGDIRECTORY to use DLLCALL for ::GetCurrentDirectoryA instead of invoking perl.exe as an external process. The problem with perl is that I had installed cygwin's perl and FMSLogo was finding it. This returned a cygwin path ("/cygdrive/c instead" of "c:\"), which caused the test code to fail to CHDIR back to that directory. As a result, running DIRECTORYTEST moved out of the "test" directory, which caused strange, difficult-to-understand downstream failures.
Since it's now possible to use DLLCALL to call get the working directory, it makes sense to do so.