So with that in mind, here is one possible solution with UNIX:
1) The file /etc/applications could contain a mapping from
"application/version" to the root directory path and could
also store other data items.
2) Users personal file is ~/.applications
3) Override with $APPLICATIONS environment variable
4) Define a C library interface to manipulate it:
#include <appdata.h>
APPDATA *ad = getappdata("xtoss/1.2");
chdir(ad->rootpath);
This basically follows the termcap/app-default solution (each level should
be able to specify customizations and then punt to the upper level). The
X app-defaults files have some nice features (like globbing) but I don't
know that all of them would be useful in this environment.