add javadoc
update constructor for preferences class

- frame and current status now passed in constructor instead of using a
setter
change from JPopup to JDailog to allow for more customizations