Fix bug with uppercase short keys not being recognised
Improve DSL with usage_break and register_parse_handler