This PR attempts to resolve #11561 by addressing the feedback from @MarcoFalke; and @gmaxwell in #12430.
Commit 30e9d24 adds a functional test to rpc_rawtransaction.py to assert that the transaction version number in the RPC output is a signed 32-bit integer.
The functional test uses the raw transaction data from Mainnet transaction c659729a7fea5071361c2c1a68551ca2bf77679b27086cc415adeeb03852e369.