Improve syntax errors when parsing pflang

The errors that the pflang parser produces are somewhat cryptic, and should be improved.  At the minimum there should be source location information.
In the case of an expecting token, if I keep track of the last post the cursor pointing to the wrong token will point to the end of the token:

Error: In expression "invalid expected token"
                                           ^

If I leave like this, keep track of the last token (or the length the last token) I can set the cursor to the beginning of the conlicting token:

Error: In expression "invalid expected token"
                                 ^

So, WDYT?