Much more comprehensive PDF parsing