added bigdecimal option, worked around active_support bug, and made 2.0.0 compatible