Move DefaultFileManager from java to scala

- Add tests for DefaultFileManager
- closeCurrentFile does not close all files when there is no current file to close
- Remove unused methods flushFile, currentFile, getPrefix from FileManager trait

I feel like I've made progress here (and what I have here could probably be ported over to JVM NetLogo with minimal change), but I'm open to suggestions as to how to clean this file up even more. 

Also, if any of the tests seem superfluous or unnecessary, some could be removed. I wanted to capture as many of the idiosyncrasies of the DefaultFileManager as I could in the process of converting the file. The primitive command tests don't necessarily cover all the cases, since DefaultFileManager is used by NetLogo code other than primitives.