Added image field

This PR:

- Adds an ImageURL field to the IndexMetadata and Document.
- Adds a TestAdapter
- Addsd get/set/has methods to the Document class

BC: NO
I don't like that. This is not like a doctrine query builder. The domain language is "go" imo. Its also a nice API.