@Nominal Animal yes I'm just always thinking about how to make this as easy to mass produce as possible (2 layers, all smd components on one side and so on) hence the slight obsession with cost.
Makes sense.
It does sound like you have a lot of experience with such projects, thanks for sharing the knowledge! 
Only as a hobbyist, though!
I do like to play with human interface devices, and am quite familiar with the Linux input subsystem.
I have seen the problems others working on hobby-custom HID devices with serial-to-USB bridges (not capable of USB HID) have had; and consider myself extremely lucky having started with AVRs with native USB interfaces, as they're quite easy to program even with open-source toolchains, but are simple/straightforward compared to current 32-bitters with their numerous peripherals and details.
I definitely recommend using an MCU with native USB so you can have a couple of HID endpoints + USB Serial for run-time configuration, per MCU. While Linux is very flexible with HID devices, some other OSes are pickier and don't like nonstandard report mixes of HID devices, so modeling ones own so that it is roughly similar to what is already widely used in the market gives maximum OS compatibility.
So, whatever MCU you pick, make sure you can find an USB HID example implemented on it, unless you intend to use an existing open-source firmware like QMK mentioned earlier. It is much, much easier to start with an existing USB HID example, and then modify it to suit ones own needs, than start from scratch.
I already mentioned I personally would probably just embed a
Teensy LC for my own one-off or prototype keyboard PCB, with a separate cable-type USB hub, because of the low cost ($12 when in stock) and the
USB HID Keyboard support Teensyduino provides (take a look at the examples on that page for an example). Note that Teensies aren't well suited for mass-produced products, however, because the bootloader is proprietary.
Because I know the keyboard PCBs would need a few design iterations to find out the best layout et cetera, I'd use an IC socket for the Teensy LC, so that I only would need to solder a socket to the (bottom at the back of the) PCB, the key switches, and the diodes. I'm pretty sure the switches can be desoldered without damage, but I'd prefer to avoid having to rework the rest. So, I could trivially just lift the Teensy LC from one board to another.
I believe the only way to
know would be to test it in practice for a few days; try to write some code, documentation, or something else actually meaningful/important, and see how it works. Heck, even measure the statistics while using, to compare the different boards quantitatively.
After I'd found a working layout and matrix/schematics, I'd know exactly what features I want. For example, I like those small I²C-controlled OLED displays (128x32 and 128x64) to occasionally show information like the current mapping; even my gamepads have those for that exact reason!)
Only
then would I look at existing microcontrollers and possibly USB hub chips, to see how best to implement it as
a product. Plus, you already have a working prototype at that point. Except, of course, I only do hobby stuff, not products, and usually drop the designs into public domain (via CC0-1.0).
Other members here know a lot more about how to go about commercializing a product, from small batches on Tindie, to large-scale product development with batches in the thousands.