added mouse functionality in input class and fixed some silly mistakes with regards to event registration