added mouse controller, without testing, and updated some keyboard controller stuff