Decoupled StackExchangeChat and JavaBot. 

Added Interface to describe classes that 'produce' stuff and can be subscribed to. Added interface describing minimal ChatInterfacing functionality (namely queryMessages and sendMessage). see #9
Is there a way to have the bot leave the chat room?  Due to the way SO Chat works, your profile pic doesn't disappear for 10 minutes or so if you don't explicitly leave the room.