Some refactoring of SpecConstr
This was originally to improve the case when SpecConstr generated a function with an unused argument (see Trac #4941), but I ended up giving up on that. But the refactoring is still an improvement. In particular I got rid of BothOcc, which was unused.
Showing with 73 additions and 87 deletions