Ensure that DecimalNodes with mathematically equal values are equal

And also ensure that .hashCode() works as well. For the latter, pick the
hashCode() of the underlying BigDecimal's double value.

See also here: http://stackoverflow.com/a/14313302/1093528