various small refactoring, javadocs, move classes in other packages...