[refactor] implementing Interfaces for DAO
[refactor] implemented Interfaces for DAO

- 0 tests failing