Initial implementation of DAO base class and interface

This commit introduces an interface 'DAO' that defines basic CRUD methods
which are implemented by the class 'GenericDAO'.

For each entity, a data access object shall be implemented that extends GenericDAO.

JIRA:
CG-78
Add javadoc and SearchDao interface

JIRA:
CG-78