-don't treat all non-interface files as text documents
-some refactoring for future extensibility (future, as in tonight or later this week ;) )