Dao refactoring. Category classes added.

Changes:
* Added Category dao, domain and dao test classes.
* Default constructor of domain classes access modifier changed
to protected in order to force creation of new entities via model
factory.
* Global refactoring of jdbc dao design: added GenericDaoImpl class.
This class implements all CRUD methods for jdbc daos.
* Refactored CustomerDaoImpl class: support of GenericDaoImpl added.