Update according to the current Dao.
Change data struct names and improve file organization.
Add: minor improvements.