API: Split YXML_DATA for content/pi/attr + remove start-of-content token The start-of-content token (previous use of YXML_CONTENT) had to be returned together with YXML_ELEMSTART in some cases, which resulted in the ugly bitmask hack. The token is not strictly necessary for parsing, and I don't think that it was even that valuable, so its been removed. The YXML_DATA token has been split up into YXML_(CONTENT|PICONTENT|ATTRVAL) to give the application more context as to what kind of data it is receiving. This has the added benefit that the application doesn't need to keep track of whether it is in a context that it doesn't care about (e.g. in a PI) in order to handle data. If the application is interested in element content and not in PIs, then it can now simply ignore the YXML_PI* tokens.