Make sure shards aren't nested in DSL.
Don't do anything with shards where there are no components. (Like, maybe, the DEFAULT shard.)