Move empty rows to Rows module
Freeze rows
raise if rows is not provided
Replace State.new by self.class.new