corrected some issues with the MouseListener. class is no longer pure virtual