This is sort of a generic sounding bug, but right now the Structure code which started out simple has grown crufty and brittle over the years. We're going to take a look at how we use Structures and how they could be improved to make it easier to add new features/optimizations in an obviously *correct* fashion.