document and refactor

* lots of @overwrite annotations
* add some documentation
* remove performancewatcher -- should be better integrated into checkpointing
* use diamond operator for new collections