This is Jubi's undefined behavior patch plus a few test cases that I wan...

...ted to

add.

The purpose of this patch is to teach Souper about a bunch of UBs that it hadn't
known about and also to factor the UB-adding code out into functions that will
be called from the code fixing issue 13.