Hello Jameson, by chance, I was browsing around the Colemak site yesterday, and saw your «Dead keys and xkb — oh my.» post. As I have no Colemak account, I could not comment, but now I have the opportunity: Do not implement dead keys as XKB levels or groups. Use the Compose mechanism in libX11. Searching the web for «.XCompose» should give you sufficient information to get going.
Regards, Andreas