### Describe the issue

Testing in bitcoin 0.13.0, calling `bitcoin-cli listsinceblock x` is outputting all double-spent transactions that are in the wallet, even those that were double-spent well and truly before x.
### Is the issue reproducible?

Yes
#### List steps to reproduce below:
1.   Create a double-spend send to your wallet (easiest using bip125)
2.   Wait until one confirms, and then wait a few more blocks
3.   Run `bitcoin-cli listsinceblock $(bitcoin-cli getbestblockhash)` and it will output the double spent transaction
### Expected behavior

The double-spent transaction that was conflicted before the block hash should be filtered

{
    if (pwallet) return true;
    if (avoidException) return false;
    if (!HasWallets()) {
        throw JSONRPCError(
            RPC_METHOD_NOT_FOUND, "Method not found (wallet method is disabled because no wallet is loaded)");
    }
    throw JSONRPCError(RPC_WALLET_NOT_SPECIFIED,
        "Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path).");
}
void EnsureWalletIsUnlocked(const CWallet* pwallet)
{
    if (pwallet->IsLocked()) {
        throw JSONRPCError(RPC_WALLET_UNLOCK_NEEDED, "Error: Please enter the wallet passphrase with walletpassphrase first.");
    }
}
static void WalletTxToJSON(interfaces::Chain& chain, interfaces::Chain::Lock& locked_chain, const CWalletTx& wtx, UniValue& entry)
{
    int confirms = wtx.GetDepthInMainChain(locked_chain);
    entry.pushKV("confirmations", confirms);
    if (wtx.IsCoinBase())
        entry.pushKV("generated", true);
    if (confirms > 0)
    {
        entry.pushKV("blockhash", wtx.m_confirm.hashBlock.GetHex());