Add prefix? method on blocks to lift to patterns

Any single-parameter block returning a boolean can be lifted to a
pattern that succeeds exactly when the block returns true using the ?
operator.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	gracelib.c
Made BlockPattern initialisation single threaded.

Same change as for all other "ClassData"s.