build.ps1: organise script options
Organise the build options which have grown organically. We have a
number of options that are co-dependent but were spread apart. Ideally,
we would like to minimise the options. There are a number of "options"
which are less so user-configurable options but rather options to allow
migration (e.g. python version, sccache version). There are some options
which are temporary and would be ideal to simply drop at some point
(`IncludeDS2` should always be true, `IncludeNoAsserts` should
become toolchain variants to build, and `FoundationTestConfiguration` is
meant to be a CI configuration).