I’m pretty sure both are possible in xkb. But you’ll have to learn how to get a custom xkb_keymap into your DE of choice. I only learned enough to do one mapping:
This remaps Capslock to Escape, Escape to Compose, and Shift+Escape to Capslock. Not what you want, but hopefully this will give you a starting point to playing/breaking xkb.
Another benefit of doing this with xkb: it’s now a separate codebase from X.org, and is used in every Wayland compositor I know of.