char *dupstrn(char const *const source, size_t num_chars)
See dupstr,
except that this version takes the number of characters to be copied.
Easy for copying a string except the quotes.
char *dupstr(char const *const source)
The C89 standard does not define a strdup() in the C library,
so define our own strdup.
Function names beginning with "str" are reserved (I think),
so make it dupstr,
as that is what it does: duplicate a string.
is_pir_directive
Returns a non-zero value if the specified name is a PIR directive.XXX It might be worthwhile to enter the PIR directives as rules; this saves a lot of checking; these rules should just return TK_ANY.