Write domain model classes

For modeling the metadata and establishing an object mapping to
Elasticsearch I have created two classes. A general metadata class
and a more specific CKAN class.

Signed-off-by: Konrad Reiche <konrad.reiche@gmail.com>
Add harvest routine

The harvest routine does the following. From the list of repositories it
fetches the CKAN URL entries and then iterates each repository. In the
iteration all the datasets are queried with single requests to get get
all the details. From the JSON result a dataset object is created and
indexed by Elasticsearch.

Signed-off-by: Konrad Reiche <konrad.reiche@gmail.com>