add doctype and cdata parsing