Add a generalised 'case' construct.