Rearchitecting

All the changes.