Improve Structural equality

Faster GetHachCode implementation.
Fix #503