Added rain senors and improved double rounding errors.

This adds rain sensor to #1656 and closes #1713
better stick with BigDecimal and use "BigDecimal.HUNDRED.min(dValue)"