A string representation works for integers >= 2^1024: see https://github.com/rauschma/strint.
However, I need these values to have more accuracy than integers. Additionally I need to handle multiplication, powers, and division of these large numbers. The final result will be be small enough to be a JavaScript number.