Improving and adding JavaDoc
Closes #5