iter0 satsifies all projects requirements. Needs clean up. See: iter1