KeyInteractive interface

Added a KeyInteractive interface to be implemented by panels that may be interacted with using the keyboard.
MapPanel now implements the KeyInteractive interface. Changed the methods to move the cursor so that they fit
the interface's implementation.
Changed MainFrame. It now holds a single KeyInteractive-implementing panel which all key presses will be forwarded to.
Minor changes to UnitInfoPanel due to some assets being renamed and using a single listener for the buttons (instead of creating a new
one for each).