WIP: add javadocs