Path condition improvements:

* Support a subclass of value (i.e. non-memory) PCs which is checked /at definition time/, instead of at the top of a nominated successor block.
* Support verification functions, which are twinned with path conditions functions and check that the the former's assertion is correct at runtime.
* Complete support for path condition checks occurring within loops, in paticular correcting the forwarding-phi-insertion code to account for possible path condition-related breaking edges within loops.