Moved keyboard maps to libraries. And more.

tl;dr { Optional selection of layouts, no more patching arduino-package to
add new layouts }

Abusing the preprocessor a bit, but moving the keymap definitions out
of the Arduino dir is worth it as it means no more patching to add
new layouts. This commit also adds optional layouts, allowing to
select up to 4 layouts for the firmware. This is done to save flash.

This offsets existing layouts by 1, meaning that you need to execute
the xk command and select a layout before using your key.