Implement connect event dispatching
Add javadoc
Code cleanup
Call parent constructor to initialize
Update javadoc