Changes based on discussions

- use Void instead of BoxedUnit in Java API
- remove erroneously placed throw e
- change license header
- make plugin-dispatcher config optional and use the recommended defaults if not specified
- follow map-recover-pipeTo style
- add INTERNAL API markers