action_list: remove show method

Also adds __iter__ so we can use an action_list as a sequence.
diff --git a/tools/munger/scripts/message_gen.py b/tools/munger/scripts/message_gen.py
index ff535f7..6761935 100644
--- a/tools/munger/scripts/message_gen.py
+++ b/tools/munger/scripts/message_gen.py
@@ -429,7 +429,8 @@
             _p3("outstr += obj.show(prefix + '  ')")
         else:
             _p2('outstr += prefix + "List ' + list_var + '\\n"')
-            _p2('outstr += self.' + list_var + ".show(prefix + '  ')")
+            _p2('for obj in self.' + list_var + ':')
+            _p3('outstr += obj.show(prefix + "  ")')
     if has_string:
         _p2("outstr += prefix + 'data is of length ' + str(len(self.data)) + '\\n'")
         _p2("##@todo Fix this circular reference")
@@ -705,7 +706,9 @@
     def show(self, prefix=''):
         outstr = prefix + "flow_stats_entry\\n"
         outstr += ofp_flow_stats.show(self, prefix + '  ')
-        outstr += self.actions.show(prefix + '  ')
+        outstr += prefix + "List actions\\n"
+        for obj in self.actions:
+            outstr += obj.show(prefix + '  ')
         return outstr
 
     def __eq__(self, other):