Don't generate code for empty StateHierarchies

When a StateHierarchy contains no variables or arrays, it should not be output, since the C standard doesn't really cover empty structs. (I was having trouble using IAR's MSP430 compiler with simple Atom programs that had an empty state.)

Correct me if I'm wrong, but I think this is correct - if a StateHierarchy contains no members, it will not be referenced in code anywhere, so this does not introduce errors where state names are not found.