Some more non-trivial design changes.