Merge remote branch 'upstream/master'
Improved the parser/lexer for better error messages. Added a lot otf tokens and
implemented the cfengine language check in the parser.  Now i can run simple
cfengine examples.

added some comments

fixed the syntax for functions, functions can be defined without (), and fixed and segv printf without arguments

can now parse cfengine_stdlib.cf. Functions with args are threated as idsyntax.

Added all the define keywords for:
   * var category
   * class category

keywords that can be used by all categories like, eg 'comment, handle'.

So we can no check the syntax in lex/yacc and give useful error messages

added all class types to lex and yacc.

reset category check variable and added some more tokens

modified all mod_* files so we can access the category definitions for agent. It much easier parsing then define all the tokens in lex

reverted all changes for mod_*.c files, make use of  SubTypeSyntaxLookup function. So we know all
keywords supported for the category and agent type ;-)

added edit_xml to valid agent type and categories

Can now detect body syntax errors and parse all options. Included special bodies:
 - body agent control
 * body server control
 * body executor control
 * body common control

removed amd replaced some statements so it is suitable for distribution

Added support for body: monitor, reporter, server executor

To acomplish this i put some BodySyntaxes in cf3.defs.h

implemented my own error function. So we get useful errors

imporved error messages

changed error message for invalid body attributes/types

improved error messages

improved error messages for syntax errors

edit_xml was not reconized as valid attribute for files promise type and better error reporting for unknown attribute keywords

fixed a small merge problem with upstream
Put the right files inplace
Merge branch 'parser' of github.com:basvandervlies/core into parser