use sparse keymap, define it in one go
use cl-lib instead of cl
more conventional message
enforce use of spaces for intendation