Only handle kbd events from Ace when Ace actually passes us kbd events. Hooray for null values.
Report and annotate errors.