Added JavaDoc for everything