Use specific ConstraintExpressions for constraints in ConstraintsCPA, instead of InvariantsFormulas.

In constrast to InvariantsFormulas, ConstraintExpressions save the type of expressions, which allows us to use bitvector formulas for sat checks.
Unlike AExpressions, they can be used for Java and C expressions alike, but do not allow a differentiation between signed and unsigned shifts.
In addition, they have to be created from existing AExpressions.



git-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/symbolic@15173 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c