Fix issue #14

The issue is actually mis-labeled. The restrict/compose methods were not
broken; the ITE._simplify method was returning the incorrect simplification
for a=1 and b=1.

For example:
s ? 1 : b == s + s' * b == s + b (was s * b)
s ? a : 1 == s * a + s' == s' + a (was s' * a)