accessible accordion

@SiTaggart @alexmckenley 
This should be camel case (`keyCodes`), but other than that the changes look good.