* Use 'constexpr' when including pio header files from a C++ compiler
In particular this allows compile-time checks to be performed on the
contents of pio_program structs via 'static_assert'.
This could be used (for example) to confirm that multiple PIO programs
fit in a single PIO module and abort compilation if not.
Fixes#2650
* Use feature test macro to check for 'constexpr' support
* Rename modifier PIO_CONST to __pio_const
---------
Co-authored-by: Graham Sanderson <graham.sanderson@gmail.com>
* add pioasm --version, and print version number in generated files
* Hook up pio version string in Bazel build
---------
Co-authored-by: Armando Montanez <amontanez@google.com>