refine javadoc and add apache license