TechLevel support
added a TechLevel system that is built around traits
added IprerequisiteProvider
changed LintBuildablePrerequisites to use an interface to check
changed ProvidesCustomPrerequisiteInfo to use the new interface
TechLevel UI added (+1 squashed commits)