remove the Term class

the Expression constructor will handle that functionality.
make Expression ctor more flexible

this removes the need for a separate Term class and a reduction pass in
the Constraint object.
take advantage of new Expression API

reducing expression terms is not longer required since the expression
keeps a map of terms instead of an array
update solver for new Expression API
add noimplicitany compiler switch
regenerate output
update sample app