Properly implement fromproperty markup handing in the pdftitle header field
The pdftitle header field is obtained by trying to convert the markup into a pure string.
Fromproperty markups need to be handled specially, since we have to mimick the header field
lookup in the conversion function... Thus we have to pass the header block to the
markup->string function and extract the header property values for fromproperty markups.
To keep the previous public API without the header argument working, the header
block is passed as an optional argument.
To prevent infinite loops, after looking up a header field, we temporarily
set it to an empty string for the following lookups. This is done by creating
a temporary guile module with that variable cleared.