## Issue
When transacting unspent inputs to a new address in own wallet, the qt registers it as 'payment to yourself' without showing the receiving address. That can only be seen in the details or via 'listunspent' command

## Can you reliably reproduce the issue?
Yes

## If so, please list the steps to reproduce below:
1. create raw transaction to own address with multiple inputs
2. send the raw transaction with a miner fee
3. overall balance stays the same minus miner fee, in the transactions tab shows 'payment to yourself' without the receiving address

## Expected behaviour
I'd expect the payment to show up as a received payment with (my own) recipient address and 'payment to self' tag.

## Actual behaviour
Qt client only shows miner fee as 'transacted' and shows what seems to be an empty transaction without a receiving address in the transactions tab.

## Screenshots.

![qtweird](https://user-images.githubusercontent.com/11705841/31320956-d335c23a-ac7d-11e7-99f8-c696437c7f99.png)

### What version of bitcoin-core are you using?
List the version number/commit ID, and if it is an official binary, self compiled or a distribution package such as PPA.

Core 14.02

### Machine specs:
- OS: Ubuntu 14.04
- CPU: amd
- RAM: 8G
- Disk size: 360Gb
- Disk Type (HD/SDD):Sata

### Any extra information that might be useful in the debugging process.


{
        qDebug() << "TransactionTablePriv::updateWallet: " + QString::fromStdString(hash.ToString()) + " " + QString::number(status);
        
        QList<TransactionRecord>::iterator lower = qLowerBound(
            cachedWallet.begin(), cachedWallet.end(), hash, TxLessThan());
        QList<TransactionRecord>::iterator upper = qUpperBound(
            cachedWallet.begin(), cachedWallet.end(), hash, TxLessThan());
        int lowerIndex = (lower - cachedWallet.begin());
        int upperIndex = (upper - cachedWallet.begin());
        bool inModel = (lower != upper);
        if(status == CT_UPDATED)
        {
            if(showTransaction && !inModel)
                status = CT_NEW; 
            if(!showTransaction && inModel)