I'm, starting to feel that we might need another place to put interface definitions (each on its own file), perhaps in a new interface package?