This is preparatory refactoring work for being able to extract the linter as an external project called "zulint".