Initial implementation of DAOFactory