grammar: new syntax allowing for partial order symbol precedence

Extension of the syntax to be able to declare precedence relationships as
a partial order rather than a total one. Token precedence can now be
declared by groups, with no links between the groups.

%gprec arith {
  %left '+' '-'
  %left '*' '\'
}

%gprec bool {
  %left OR
  %left AND
}

Here, OR and '+' cannot be compared, and a state leading to this comparison
will raise an error, allowing to detect unwanted conflict reslution.

More precedence relationships can be declared with a syntax such as

%precr AND OR > '+'
%precr bool > '*' '/'
%precr AND = '*'

For now, the relations are not transitive.

* src/conflicts.c: Update conflict resolution and error reporting
* src/gram.h, src/gram.c: Add a marker for the parser and lexer, with the
corresponding enum
* src/parse-gram.y: Extension of the syntax
* src/symtab.c, src/symtab.h: Declaration and handling of the precedence
symbol groups, and the precedence graph created.
* src/AnnotationList.c, src/print-xml.c, src/symtab.c, src/symtab.h:
Moved the assoc information from the symbol to the prec_node
* src/scan-gram.l: Change braces interpretation after %gprec
* tests/conflicts.at: New test
* tests/existing.at, tests/input.at, tests/regression.at: Fixing testsuite

Conflicts:

	src/symtab.c
fix uniqstr check
regen