keep token location information in exception rendering

This was getting lost because safe_native converts
the token to a string. The result is indecipherable
ParseErrors. Like this: 

  File "/Users/jinty/py/py27/lib/python2.7/site-packages/chameleon/parser.py", line 234, in visit_end_tag
    raise ParseError("Unexpected end tag.", token)
chameleon.exc.ParseError: Unexpected end tag.

 - String:     "</div>"
 - Filename:   /some/path/template.pt