more tests for signatures
optional parameter predicates in signatures

A "?$foo" item in a signature yields a truth value saying whether the
preceding optional parameter was supplied.