add spec to BinaryExpr

spec of constructor
Mutation Interface

Add new mutation interfaces
Merge remote-tracking branch 'origin/AST'