Changed the build task to no longer set isDefault: true. This lets you
set your own default build task from a code workspace.
Also replaced "cd app" in each command by setting the working directory
for the task.
Removed the associations for keymap and overlays since ZMK Tools provides
associations of its own, and overriding keymap files to DeviceTree prevents
ZMK Tools from properly handling them.
By default, VS Code's C/C++ extension updates .vscode/settings.json to associate
.h files with C or C++ based on which type of file they're included by. Since
ZMK doesn't use C++, disable this behavior and always treat .h files as C
headers.
+ zmk,kscan_gpio_demux is now a compatible kscan option
+ kscan_gpio_demux is based heavily off of the implementation of
kscan_gpio_matrix, modified to address cols using an n-to-1
demultiplexer chip instead of discrete IO
+ Added zmk,kscan_gpio_demux.yaml file
* modified CMakeLists to include new source files
* Move all headers to `include/zmk` directory.
* Update includes to reference them properly.
* Add `keymap.c` file from keymap, if found.
* Toplevel CONFIG_ZMK_BLE aggregate config setting.