Handle windows better

I think this should handle the situation better. It shouldn't install `unix` unless the os isn't windows, and it makes a positive check for unix-ity before attempting to import `System.Posix.Files`. Also it follows XDG BAse Dir a bit better with the creation/changing of directory.

@garyb Let me know if this fixes it, or if this is just getting to be too much. Shame I don't have a windows box to test this on :\