Value Equality

This tightens the definition of Value Equality to exclude +0 != -0 (all zeros are now the same) and include `valueOf` overrides.