reindent + adding javadoc + suppress some warnings