Update SwiftPM to support custom configuration names

OK thanks Max. Also what specifically did you mean by "the build system" and "the CLI interface"? Are those separate repos from SwiftPM or part of it?

I really wish I knew how their "heuristic" works because in the short term we need a way to have a debug and a testing configuration, regardless of what they're called...