* Move to ZephyrBuildConfig package based on Zephyr best practices.
* Support multiple shields properly, e.g. -DSHIELD="foo bar", which
allows using existing upstream shields like `ssd1306_128x64` along
with another ZMK shield.
* Properly *add* the "ZMK config" .conf file to the conf file list,
so that existing board .conf files in `app/boards/<board>.conf` are
properly honored still. Needed for overrides to usptream boards when
combined with a local `<shield>.conf` file.
* Needed so when building with `kyria_left` shield, then config
dir containing `kyria.conf` and `kyria.overlay` will also be
applied as configs/overlays.
* Start of work of focusing on out-of-tree user keymaps.
Add ZMK_CONFIG support.
* General external configuration supported via ZMK_CONFIG,
which should point to a configuration directory.
* Priority order of overlay files to select.
* ${SHIELD}_${BOARD}.overlay
* ${SHIELD}.overlay
* ${BOARD}.overlay
* default.overlay
* Equivalent search order for .conf files for initial Kconfig
values.