symbols: improve symbol aliasing

Rather than having duplicate info in the symbol and the alias that has to be
resolved later on, both the symbol and the alias have a common pointer to a
separate structure containing this info.

* src/symtab.h: New structure sym_content
* src/symtab.c (sym_content_new, sym_content_free, symbol_free): New
* src/AnnotationList.c, src/conflicts.c, src/gram.c, src/gram.h,
src/graphviz.c, src/ielr.c, src/output.c, src/parse-gram.y, src/print.c
src/print-xml.c, src/print_graph.c, src/reader.c, src/reduce.c,
src/state.h, src/symlist.c, src/symtab.c, src/symtab.h, src/tables.c (misc):
adaptation of the new structures
* tests/input.at: corrections
regen