Preliminary support for CP-500 M80
This commits adds preliminary support for CP-500 M80. M80 is the successor to the original CP-500. It supports addressing 64K of RAM and 80x24 video in order to be able to run SO-08, the CP/M clone designed for it.
In order to avoid cluttering the codebase with clone-specific code, this commit also reorganizes the source a little so the code for TRS-80 clones such as the CP-500 can be in a "trs_clones.c", separate from the implementation of the original TRS-80 models.
The quirks abstraction was also introduced in order to allow tweaking the emulation code for specific hardware without changing it globally and potentially introducing breakage. Maybe some quirks are emulation bugs: in that case, once they are fixed, the respective quirks can go away.