Refactoring.

- Split code in multiple modules,
- Introduced Repository and Images data types,
- Use that in a "high-level" API.
- Started attempt at generating queries for testing.