added lots of comments in various classes.