large refactoring and first javadoc pass on client-facing APIs.

- retracted Format and replaced with AssetType constants (e.g. CSV)
- Repositories and Virtual Repositories as Iterables, retracted list()
methods
- tighter parametrisation of Readers and Writers
- input validation Utils
- small changes throughout