Massive structural changes
Commit everything first