Added JavaDoc to public types and functions