These are experimental, moving to branch
add some markup
take over keyboard handling from reveal entirely
(it's not that much anyway)