When I open a file info, and change the application responsible for that file, where is this override stored on the system?
The data is stored in the resource fork of the file, which is stored as the extended attribute
Take the following as an example -
Using Terminal, create a test file, calling it "test.txt"
By default "txt" extension files are opened with TextEdit. (Unless you've modified the system-wide default.) In the Finder, change the association to something else. Go back to the Terminal ..
If you have the Developer Tools installed, you can use
It's archaic, deprecated, and could (rightly) be called a hack ... but given that the UTI and bundle identifier system is "incomplete", it's what Apple uses.
I'm not sure about Mac OS X, but Mac OS (i.e. Classic) used to store this in the resource fork of each file with two pieces of information: the type code and the creator code. Both were four-byte sequences and were thus usually rendered as four character strings. The type code identified the type of the file (e.g. TEXT for a text file, APPL for an application), while the creator code identifies the application that created the file (e.g. ttxt for SimpleText or MSWD for Microsoft Word). Thus a file created by SimpleText would open in SimpleText by default, while still being identified as a text file and therefore compatible with Microsoft Word, should you choose to manually open it with Word.
Snow Leopard no longer pays any attention to type and creator codes, having replaced them with UTIs, which are reminiscent of MIME types, although more flexible, and can be used to specify the default program as well as determining which programs are compatible with a given file, but I'm not sure how individual overrides are done.