Refactoring GUI and listener classes.
Fix problem "Events aren't showing in GUI".
Added Javadoc comments and plain comments.