Added JavaDoc style documentation