Hi all, first post! As a PC->Mac switcher and wannabe application programmer, I wanted to highlight some of the differences in how Mac applications are usually arranged compared to PC applications. Please don't take this as a why-didnt-you-do-this, but as an it-would-be-nice-if.
Currently, Dwarf Fortress works like most other PC->Mac game ports: a barebones .app file is generated for the game, containing nothing but the executable and the icon, and the directory structure common to the PC version is carried over intact. This requires the user to store the application, its support files and its savegames in a single folder. As I say this is par for the course for ported games, but it doesn't fit in well with the Mac way of doing things.
A Mac .app package is actually a carefully-arranged bundle of folders presented as a single file. This bundle wraps up the application's executable, its icons, its metadata (file associations, title, version etc.), its interface strings (including all localizations), any frameworks it depends on, and and any other resources the application needs in order to run: in the case of Dwarf Fortress, the contents of the data folder. Literally all you need to launch a standard Mac application is the .app file itself, which you can store wherever you like in the filesystem or give to someone else or whatever, without worrying that you need to install additional files or libraries or that you've left something out when distributing it.
The .app file should not modify itself at runtime however, which means that support files have to be stored externally to the .app package. Preference files for applications are stored in ~/Library/Preferences/. Modifiable files that the application depends on (such as savegames or world data) are stored in ~/Library/Application Support/<Application>; this is also where any override files such as plugins or replacement tilesets would be placed by the user. Temporary cache files are stored in ~/Library/Application Support/Caches/<Application>, which allows them to be safely wiped by the system during maintenance or cleanup. Files exported by the user, like screenshots or map dumps, should end up in ~/Desktop where they're most accessible. Note that all of these folders are per-user: ~/ is a shortcut to the user's home folder, as on other Unix-based systems.
Native Mac applications generate their own support files and folders if they are missing (i.e. the first time that user runs the application), so this structure is transparent to the user - all they need to be concerned about is the .app file itself.
Of course for a ported game project, all this means a lot of extra programming work: special paths specific to the Mac port and automatic creation of missing support files (the least disruptive way to handle this would be to copy default preferences and support files stored in the .app bundle). It means additional documentation for how to hack on the game, Mac-specific notes for mods as to where to place their files, and so on.
As far as I know, none of the cross-platform toolkits make the Mac-native folder structure obvious or easy - instead they seem to actively obstruct it - so it's no wonder that so few ported games bother or are even aware of the standard structure. The benefits to the user from this application structure are less important from a development perspective than the game itself as well. Nevertheless, there are considerable benefits to the user - so please bear these conventions in mind for future versions when or if the time becomes available.
And keep up the good work of course!