Added public access for setting many values. Some are through constructors, others through setters. Also added some Javadoc comments.