Design changes

This... changes.... *everything*