dynamodb to use Decimal to validate/store/retrieve numbers

This is lightly tested; mostly a proof-of-concept for peer review in issue #890, but it does assert the correct precision requirements and perform lossless read/write.