Leaving the files where they are makes it clearer that they are intended to be interface-related data, like the XSLT, and translated as such.
Yes, even if it's not so simple, for XSL files and for .pref files, because they were designed at first with no specific consideration for localization. See various bugs related to this.
My vote for solving the local-use preferences system is to leave the current system as it is, but add a database column or some way of easily distinguishing local-use from non-local-use prefs in the DB (making the explanation column NULL for non-local-use would work, though would require a time-consuming database update). This would make building a local-use tab fairly easy.
As I understand it, the main issue is with blocker bug 3756. It could be solved without adding a new syspref table column. You get from all the .pref files a list of 'official' sysprefs and you compare it to defined sysprefs in DB: the difference are the local sysprefs. -- Frédéric