Correctly convert decimal.Decimal when parsing POST args.

Decimals are being marshalled correctly when being included as part of a response. It is also being parsed correctly when the arg is from a querystring. However, the decimal arg is not being parsed correctly when it is a part of a POST request's body because a float is being passed to Decimal, which loses precision after a Decimal is created. The problem exists on python2.x, but I believe it's already fixed on python3.x. This pull request fixes the problem by converting the float value to a string before passing it to the Decimal constructor. Very important when dealing with money.