Initial DAGI model. Big refactor of specs