Added a GroupKeyMapController, set up as a singleton.

A lot of work is needed... bu tI need sleep first