added comments and javadocs
added empty classes