Changed IDAO to interfaces