changed some of the architecture stuff to make it easier to plop in a new dynamic