When importing a watch-only address over `importmulti` with a specific timestamp, the wallet's `nTimeFirstKey` will be set to 1.
I think we should add a optional timestamp to `CWallet::AddWatchOnly()` and use it when importing addresses or pubkeys.

isminetype fIsMine = pwallet->IsMine(txout);
        
        
        
        if (nDebit > 0)
        {
            
            if (pwallet->IsChange(txout))
                continue;
        }
        else if (!(fIsMine & filter))
            continue;
        
        CTxDestination address;
        if (!ExtractDestination(txout.scriptPubKey, address) && !txout.scriptPubKey.IsUnspendable())
        {
            LogPrintf("CWalletTx::GetAmounts: Unknown transaction type found, txid %s\n",
                     this->GetHash().ToString());
            address = CNoDestination();
        }
        COutputEntry output = {address, txout.nValue, (int)i};
        
        if (nDebit > 0)
            listSent.push_back(output);
        
        if (fIsMine & filter)
            listReceived.push_back(output);
    }
}
void CWalletTx::GetAccountAmounts(const string& strAccount, CAmount& nReceived,