Changes to convert dynamoDb number type to a python decimal type, to pre...

...serve the 38 decimal digits that dynamoDb supports (after the decimal point).

This avoids converting the number to a float or int, which causes problems since the value no longer matches what is in dynamoDb.

See boot issue 873 for more details.
https://github.com/boto/boto/issues/873#issuecomment-7303664