def frozen_clone
      clone.tap do |cloned|
        cloned.nodes = @nodes.map{|node| node.frozen_clone }.freeze
        cloned.freeze
      end
    end
def frozen_clone
      clone.tap do |cloned|
        cloned.nodes = @nodes.map{|node| node.frozen_clone }.freeze
        cloned.freeze
      end
    end
Returns a frozen copy of this Layout and all of its child Node and
 Worker objects. Woodhouse::Server always takes a frozen copy of the
 layout it is given. It is thus safe to modify the same layout
 subsequently, and the changes only take effect when the layout is
 passed to the server again and Woodhouse::Server#reload is called.