Use BigDecimal to support huge numbers

Side effect: hex is not supported anymore