Added support for named sub structs/unions

I tested it only a little. So far it works. Some c2nim tests did already not work before my changes (system, matrix)!

I noticed that the anonymous struct tests is different then before. What changed was the hash. I gues the reason is that on 64bit the hash is 64bit and on 32bit its 32.