adding 'forward-declaration' of structs to prevent errors in embedding structures in struct defs
Changing embedded struct elements to have _embedded suffix rather than _info suffix