added Mouse.h/.cpp and some general code cleanup