Use symbol aliases to group equivalent type definitions, ignoring the defining header files. Various small fixes and improvements.

--HG--
rename : test/hello-err/hello-err.c => test/hello-errno/hello-errno.c
rename : test/hello-cast/hello-cast.c => test/hello-stack/hello-stack.c
rename : test/hello-cast2/hello-cast2.c => test/hello-static/hello-static.c