Fixed: escape on a panel or popover breaks the key chain event

Previously when hitting escape on a CPPanel, the key chain event was broken.
Now when the user hit escape, cappuccino do the following process

- Check if the firstResponder or the chain of the nextResponder implement cancelOperation:
- If not, performKeyEquivalent on the firstResponder and so on
- If not, call the method cancel: on the firstResponder and the chain (not in the case of the CPPopover)

Previously, a complete: method was called if the user hit escape on a void window. This is not a feature of Cocoa, @aparajita  or @aljungberg can you confirm that ?

This commit is related to the commit #2139
Nop, this how cocoa does.

If you override <code>- (void)cancel:</code> in a CPPanel, you'll see that this method is called to close the panel (at the end).