Cleanup and improve coverage of file type unit tests
This commit significantly reorganizes spec/unit/type/file_spec.rb, in
preparation for refactoring of the type to support Windows. It also adds
tests for most of the non-trivial untested methods of the file type.
Disabled symlink tests on Windows, removed duplicate #remove_existing
tests, fixed absolute path drive letter issue with the title, and
changed tests that added an expectation to File.unlink, as cleanup is
not able to unlink them.