Add @return documentation when needed, remove useless todo comment
Enforce keyword order as advised in the JLS

Also explicitly make classes that can't be inherited final
Fix style issues (lines too long, indentation, ...)