- Rough first pass on mouse handler