Hey,
Your program had several issues...
1) The program was freezing because everyone was waiting at the cat monitor
2) You forgot to interrupt the mouse thread once you killed it
3) The static HashMap approach wasen't really working
Here is a version of the program that seens to be working allright for me:
ps: There is a game development forum here at the saloon

.
Cheers
[ December 29, 2008: Message edited by: Anthony Accioly ]
[ December 29, 2008: Message edited by: Anthony Accioly ]