added license header
added Java Doc for classes