Rewrite build detection description
Degenerate builds
Generate build types
Generate build functions using TH