If one calls `fundrawtransaction`, the change address will be retrieved from the keypool, though, this key/address will always be returned to the pool, leading to the problem that the next `getnewaddress()` call will restult in the same key/address.

Either we remove the auto-change-address (users would need to call `getrawchangeaddress` first [current best practice anyway]) or we add a call to keep/mark a specific key/address as change (after one have sent the funded raw transaction).

Reported by @NicolasDorier on IRC.
{
                CWalletTx &coin = mapWallet[txin.prevout.hash];
                coin.BindWallet(this);
                NotifyTransactionChanged(this, coin.GetHash(), CT_UPDATED);
            }
        }
        
        mapRequestCount[wtxNew.GetHash()] = 0;
        if (fBroadcastTransactions)
        {
            
            if (!wtxNew.AcceptToMemoryPool(maxTxFee, state)) {
                LogPrintf("CommitTransaction(): Transaction cannot be broadcast immediately, %s\n", state.GetRejectReason());
                
            } else {
                wtxNew.RelayWalletTransaction(connman);
            }
        }
    }
    return true;
}
void CWallet::ListAccountCreditDebit(const std::string& strAccount, std::list<CAccountingEntry>& entries) {