code style and cleanup
use interface in JMS
Add IUser interface, and unit tests for the join message service