Add Expression::Base
update requires
Refactor mutation
Add expression cloning
Add expression signature
Add basic scoring