Fatti:
A.
Il 22 aprile 2004, C._ e D._ hanno venduto a A.A._ e B.A._, il foglio PPP xxx di X._, consistente in una quota di comproprietà di 210/1000 del mapp. yyy di quel Comune, con diritto esclusivo sull'appartamento xxx del condominio che vi è ubicato.
Con contratto generale d'appalto sottoscritto il giorno precedente, gli acquirenti hanno incaricato i venditori di eseguire la riattazione "chiavi in mano" del citato foglio, per una mercede forfettaria di fr. 160'850.-- (IVA inclusa), da corrispondere in ragione di fr. 78'850.-- entro il 30 maggio 2004 e di fr. 82'000.-- a 30 giorni dal collaudo.
B.
Con petizione del 14 marzo 2006, C._ e D._ hanno convenuto in giudizio A.A._ e B.A._, chiedendone la condanna al versamento in solido, di fr. 98'540.--, oltre interessi al 6 % dal 14 dicembre 2004 su fr. 82'103.-- e dalla data della petizione sulla differenza. La pretesa era composta della mercede residua (fr. 82'000.--), e da un importo per lavori supplementari (fr. 16'450.--). Tenuto conto della perizia giudiziaria allestita in corso di causa, con le conclusioni essa è stata ridotta a fr. 90'423.--.
Con risposta del 10 luglio 2006 A.A._ e B.A._ hanno chiesto la reiezione della petizione. In via riconvenzionale, hanno domandato: (a) di essere autorizzati a fare svolgere da terzi tutte le riparazioni e la completazione delle opere lacunose non eseguite dagli attori; (b) di condannare gli stessi a corrispondere loro un importo non determinato; (c) di accertare l'inesistenza di qualsiasi credito degli attori, (d) di obbligarli ad allestire/far allestire i piani di dettaglio dell'opera o, in subordine, a versare un risarcimento di fr. 20'000.--. Con le conclusioni, sempre sulla scorta della perizia giudiziaria citata, i convenuti hanno specificato quali erano le riparazioni che domandavano di fare eseguire a spese degli attori e indicato in fr. 35'642.-- il risarcimento richiesto per spese di sistemazione dei difetti già sostenute.
C.
Con sentenza del 2 aprile 2014, il Pretore competente ha accolto parzialmente l'azione principale, decidendo che i convenuti erano tenuti a versare a C._ e D._ il saldo della mercede accordata ed un importo per lavori supplementari. La congruità dell'importo complessivo era stata verificata dal perito giudiziario, che l'aveva cifrato in fr. 90'423.--. Tenuto conto di talune deduzioni contrattuali "concordate o giustificate", accertate dal perito in fr. 1'400.--, il Giudice di prime cure ha quindi fissato in fr. 89'023.-- la somma complessiva da riconoscere agli attori, esclusiva della presa in considerazione di deduzioni per difetti (dispositivo n. 1).

Nel contempo, egli ha parzialmente accolto l'azione riconvenzionale. Considerato che la garanzia per difetti dell'opera fosse retta dalla norma SIA 118 e preso atto del fatto che i convenuti avevano optato per la riparazione degli stessi, ha innanzitutto rilevato che la domanda riconvenzionale avrebbe dovuto tendere in via principale alla condanna degli attori a eseguire i relativi lavori (art. 169 cpv. 1 della norma SIA 118), e soltanto in subordine all'ottenimento dell'autorizzazione a farli eseguire da terzi. Giudicata irrita la domanda di autorizzazione a fare svolgere tutte le riparazioni e la completazione delle opere lacunose non eseguite dagli attori, per quanto concerne i difetti ha ad ogni modo aggiunto: da un lato, che il verbale di collaudo dell'opera ne indicava solo di minori, in parte risolti e in parte nemmeno esaminati dal perito, ragione per la quale occorreva concludere che i convenuti avevano rinunciato a farne valere di altri; d'altro lato, che l'elenco di tutte le lacune esecutive contenuto nella perizia (privata) della E._ SA, trasmessa agli attori a metà febbraio 2006, non permetteva di migliorare la posizione dei convenuti, perché essi non avevano indicato e provato quali difetti si sarebbero manifestati dopo il collaudo. Detto ciò, e con riferimento alla richiesta di risarcimento "per spese di sistemazione dei difetti già sostenute", ha invece indicato che i convenuti avevano diritto: ad un importo di fr. 2'520.--, riconosciuto già dagli attori in relazione alla realizzazione di un impianto di riscaldamento ad olio anziché di una termopompa; ad un importo di fr. 5'380.60, relativo alla messa a norma dell'impianto elettrico; infine, a ricevere dagli attori i piani delle opere corretti e completi. Di conseguenza, ha accolto l'azione riconvenzionale per l'importo di fr. 7'900.60 (dispositivo n. 3.1), nonché per la domanda relativa alla consegna dei piani (dispositivo n. 3.2).
D.
Su appello dei convenuti, con sentenza del 24 novembre 2015 la seconda Camera civile del Tribunale d'appello del Cantone Ticino ha parzialmente accolto il ricorso.
In riforma del dispositivo n. 3.1 della pronuncia del Pretore, essa ha infatti aumentato l'importo dovuto ad A.A._ e B.A._ a fr. 17'330.60, aggiungendo all'importo di fr. 7'900.60 già riconosciuto un importo di fr. 9'430.-- per minor valore dell'opera. Anche se in parte con altre motivazioni, ha per il resto confermato quanto deciso in prima istanza.
E.
Chiedendo la riforma di quest'ultimo giudizio, A.A._ e B.A._ sono insorti davanti al Tribunale federale con ricorso in materia civile.
Con la risposta, gli opponenti hanno domandato: in via principale, che il ricorso sia dichiarato inammissibile; in via subordinata, che esso sia respinto. Le parti hanno in seguito depositato una replica e una duplica, con le quali hanno confermato le loro originarie richieste. Con decreto del 22 gennaio 2016, la Presidente della Corte adita ha negato l'effetto sospensivo al ricorso.
Diritto:
1.
1.1. L'impugnativa è stata presentata da una parte parzialmente soccombente in sede cantonale (<ref-law>). Essa è tempestiva (art. 46 cpv. 1 lett. c in relazione con l'<ref-law>) ed è diretta contro una sentenza finale (<ref-law>) emanata su ricorso dall'autorità ticinese di ultima istanza (<ref-law>) in una causa civile (<ref-law>) che raggiunge il valore litigioso richiesto (<ref-law>). Sotto questi profili è perciò ammissibile.
1.2. Con gli opponenti ci si potrebbe chiedere in che misura le conclusioni formulate dai ricorrenti, che in base al principio della buona fede vanno comunque lette tenendo conto delle motivazioni (<ref-ruling> consid. 1.2 pag. 136; sentenze 4A_375/2012 del 20 novembre 2012 consid. 1.2 non pubblicato in <ref-ruling> e 4A_688/2011 del 17 aprile 2012 consid. 2 non pubblicato in <ref-ruling>), rispettino l'<ref-law>. Visto l'esito dell'impugnativa, la questione non va tuttavia approfondita oltre.
2.
2.1. Con il ricorso in materia civile può essere fatta valere la violazione del diritto federale (<ref-law>), che include anche i diritti costituzionali dei cittadini (<ref-ruling> consid. 3.1 pag. 447).
Salvo che per i casi citati dall'<ref-law>, non può invece essere censurata la violazione del diritto cantonale. È però sempre possibile fare valere che l'errata applicazione del diritto cantonale da parte dell'autorità precedente comporti una violazione del diritto federale, segnatamente del divieto d'arbitrio (<ref-law>; <ref-ruling> consid. 2.3 pag. 466).
2.2. Il Tribunale federale applica d'ufficio il diritto federale (<ref-law>). Tuttavia, tenuto conto dell'onere di allegazione e motivazione imposto dall'art. 42 cpv. 1 e 2 LTF, il cui mancato rispetto conduce all'inammissibilità del gravame (<ref-law>), esso considera di regola solo gli argomenti proposti nell'atto di ricorso (<ref-ruling> consid. 2; <ref-ruling> consid. 1.1).
Le esigenze di motivazione sono più severe quando è fatta valere la violazione di diritti fondamentali. Il Tribunale federale esamina la violazione di questi diritti soltanto se il ricorrente ha sollevato e motivato in maniera puntuale tale censura (<ref-law>). Ciò significa che il ricorrente, pena l'inammissibilità del gravame, deve spiegare in modo chiaro e dettagliato, alla luce dei considerandi della sentenza impugnata in che modo sarebbero stati violati i suoi diritti costituzionali (<ref-ruling> consid. 1.3.1; <ref-ruling> consid. 1.2, con rinvii). Critiche appellatorie non sono ammesse (<ref-ruling> consid. 1.3; <ref-ruling> consid. 3.1; <ref-ruling> consid. 2).
2.3. In linea di massima il Tribunale federale fonda il suo ragionamento giuridico sugli accertamenti svolti dall'autorità inferiore (<ref-law>). A questi appartengono sia le constatazioni concernenti le circostanze relative all'oggetto del litigio sia quelle riguardanti lo svolgimento della procedura innanzi all'autorità inferiore e in prima istanza, vale a dire gli accertamenti che attengono ai fatti procedurali (<ref-ruling> consid. 1.3.1 con riferimenti). Il Tribunale federale può unicamente rettificare o completare l'accertamento dei fatti dell'autorità inferiore, se esso è manifestamente inesatto o risulta da una violazione del diritto ai sensi dell'<ref-law> (<ref-law>). "Manifestamente inesatto" significa in questo ambito "arbitrario" (<ref-ruling> consid. 2; <ref-ruling> consid. 1.5). L'eliminazione del vizio deve inoltre poter essere determinante per l'esito del procedimento (<ref-law>).
La parte che critica la fattispecie accertata nella sentenza impugnata deve sollevare la censura e motivarla in modo preciso, come esige l'<ref-law> (<ref-ruling> consid. 2.3 con rinvii). Essa deve spiegare in maniera chiara e circostanziata in che modo queste condizioni sarebbero soddisfatte (<ref-ruling> consid.1.3.1 con rinvii). Se vuole completare la fattispecie deve dimostrare, con precisi rinvii agli atti, di aver già presentato alle istanze inferiori, rispettando le regole della procedura, i relativi fatti giuridicamente pertinenti e le prove adeguate (<ref-ruling> consid. 2). Se la critica non soddisfa queste esigenze, le allegazioni relative a una fattispecie diversa da quella accertata non possono essere considerate (<ref-ruling> consid. 1.3.1).
3.
3.1. Constatato che gli insorgenti si lamentavano dell'accoglimento della pretesa oggetto dell'azione principale, ritenendola costituita da prestazioni mai corrisposte, doppie fatturazioni, rispettivamente da prestazioni non certificabili o fatturate dall'architetto, la Corte cantonale ha confermato innanzitutto che la stessa era fondata e che C._ e D._ avevano diritto al pagamento di fr. 89'023.-- oltre a interessi.
3.2. Passata ad esaminare le pretese avanzate in via riconvenzionale, che sono state riconosciute dal Pretore nella misura di fr. 7'900.60, oltre che per la domanda attinente alla consegna dei piani, ha quindi osservato:
che, a differenza di quanto ritenuto dal Giudice di prima istanza e dalle parti, la vertenza non va giudicata applicando (anche) la norma SIA 118, bensì gli art. 363 e segg. CO e questo alla condizione che il contratto non preveda diversamente;
che il contratto d'appalto in oggetto deroga all'ordinamento legale, nella misura in cui istituisce la possibilità di segnalare in qualsiasi momento, durante il termine di prescrizione, i difetti riscontrati e che, di conseguenza, bisogna di principio ritenere che la notifica dei difetti rilevati nella perizia privata della E._ SA, che gli appellati affermano di aver ricevuto a metà febbraio 2006, cioè a meno di due anni dalla consegna dell'appartamento, avvenuta il 23 luglio 2004, rispettivamente dal collaudo, svolto il 21 ottobre 2004, fosse tempestiva;
che, nonostante dovesse riferirsi all'<ref-law> e non alla norma SIA 118, la conclusione del Pretore secondo cui, tramite la domanda riconvenzionale gli appellanti avrebbero però dovuto chiedere, in primo luogo, la condanna degli attori all'eliminazione dei difetti e che, non avendo proceduto in tal senso, la loro domanda di essere autorizzati a far eseguire le riparazioni a spese degli appellati risulta inammissibile, andava confermata.
3.3. Riguardo alla richiesta di versamento di complessivi fr. 35'642.-- (fr. 900.-- per l'omessa installazione dei contatori di calore, fr. 5'380.-- relativi a fatture pagate dai committenti per la sistemazione dell'impianto elettrico, fr. 19'932.-- per costi di riparazione della PPP e delle parti comuni, fr. 9'430.-- per minor valore della PPP e delle parti comuni), ha infine deciso:
che per l'importo di fr. 19'932.--, al quale vanno aggiunti fr. 900.-- per omessa installazione dei contatori di calore, non si tratta di spese "già sostenute" dai committenti per la riparazione dei difetti, bensì della valutazione della spesa necessaria per l'eliminazione dei difetti riscontrati dal perito giudiziario, che gli appellanti avevano già chiesto di poter essere autorizzati ad eseguire tramite la domanda di riparazione, rettamente giudicata inammissibile dal Pretore;
che la domanda di condanna degli appellati al versamento di questi importi potrebbe al più essere intesa quale pretesa di diminuzione della mercede in proporzione del minor valore dell'opera, ma che, in casu, il rimborso a favore del committente dei costi sopportati per la riparazione dell'opera non poteva esser presa in considerazione, poiché gli appellanti avevano già esercitato, anche se in modo processualmente irrito, il diritto all'eliminazione gratuita dei difetti ad opera dell'appaltatore, perdendo così il diritto di prevalersi della possibilità di richiedere anche la riduzione della mercede (<ref-law>);
che, a dispetto della sua denominazione, il rimborso del minor valore commerciale, che pregiudica il valore dell'opera malgrado l'esecuzione degli interventi di riparazione dell'immobile, rientra sotto la voce "risarcimento dei danni" ai sensi dell'<ref-law> e può pertanto entrare in linea di conto anche quando il committente abbia optato per la riparazione gratuita dei difetti, di modo che l'importo di fr. 9'430.-- per minor valore doveva andare ad aggiungersi a quello di fr. 7'900.60 già riconosciuto dal Pretore.
4.
I ricorrenti censurano in primo luogo la mancata applicazione al caso in esame della norma SIA 118.
4.1. La Corte cantonale è giunta alla conclusione che questa norma non andasse applicata dopo avere testualmente rilevato:
"Nella fattispecie, negli allegati introduttivi in prima sede le parti non hanno invocato la norma SIA 118, ma nemmeno vi hanno fatto accenno. Si sono appellate alla stessa, per quanto concerneva la responsabilità per difetti, solo in sede di conclusioni, e pertanto tardivamente. Inoltre - ed il rilievo assume carattere decisivo - la citata norma SIA non è stata versata agli atti conformemente agli art. 78 cpv. 2 e 180 CPC/TI. Le argomentazioni circa l'applicabilità dei suoi disposti restano pertanto confinate al ruolo di allegazione di parte, non supportate da alcun riscontro probatorio".
4.2. Nell'impugnativa, gli insorgenti affermano che, a differenza di quanto indicato nell'avversato giudizio, l'applicazione della norma SIA 118 è stata sostenuta sin dall'inizio della procedura, ovvero già in petizione, e sino alle conclusioni di causa.
Facendo riferimento a una precedente pronuncia della Corte cantonale, sostengono nel contempo che la loro mancata produzione non comporta forzatamente la non applicabilità delle stesse, poiché occorre considerare che, allorquando il contenuto di una norma SIA, riportato dalle parti negli allegati di causa, non viene da esse contestato, detta norma è parte integrante delle pattuizioni contrattuali.
4.3. Queste argomentazioni non sono tuttavia determinanti. Come indicato nel precedente considerando 4.1, la Corte cantonale ha infatti negato l'applicabilità della norma SIA 118 facendo specifico riferimento agli art. 78 cpv. 2 e 180 CPC/TI, che ancora regolava la procedura di prima istanza; se gli insorgenti volevano mettere in discussione la conclusione cui essa è giunta, era quindi con l'applicazione di detti disposti di diritto cantonale - indicati espressamente dai Giudici ticinesi come di "carattere decisivo" - che avrebbero dovuto confrontarsi.
In assenza di uno specifico confronto in tale senso, e segnatamente di un'argomentazione conforme all'<ref-law> con cui venga lamentata un'applicazione arbitraria o altrimenti lesiva della Costituzione federale del codice di procedura civile ticinese, qui determinante, la loro critica va pertanto respinta e il giudizio impugnato, che nega l'applicabilità della norma SIA 118, confermato.
4.4. Nel contempo, la conferma del giudizio impugnato relativamente alla questione dell'inapplicabilità della norma SIA 118, comporta anche il rigetto di tutte quelle censure, concernenti i singoli difetti, che i ricorrenti formulano partendo dalla premessa che la citata norma andasse invece applicata.
In questo contesto, occorre del resto rilevare che assai spesso dette critiche sono accompagnate da osservazioni e precisazioni, relative all'accertamento dei fatti, che non adempiono manifestamente alle condizioni richieste, affinché fatti diversi da quelli che emergono dal giudizio impugnato possano essere presi in considerazione dal Tribunale federale (precedente consid. 2.3). Quand'anche non avessero dovuto essere scartate a priori, come invece è il caso, la maggior parte di queste censure sarebbe pertanto risultata inammissibile per mancanza di una motivazione idonea del ricorso.
5.
Preso atto di quanto precede, resta in sostanza ancora da esprimersi sulle censure relative alla conferma da parte del Tribunale d'appello della fondatezza delle pretese oggetto dell'azione principale, quindi della condanna dei ricorrenti al pagamento agli opponenti di fr. 89'023.-- oltre a interessi.
5.1. Nell'impugnativa, gli insorgenti rilevano che "in conseguenza all'erronea conclusione relativa al fatto che le norme SIA 118 non si applicherebbero al caso di specie", il querelato giudizio rigetta anche la richiesta di accertamento dell'inesistenza di qualsiasi loro debito nei confronti dei resistenti, tutelando la pretesa di questi ultimi di fr. 89'023.-- oltre ad interessi.
Sostengono quindi che ciò costituirebbe "una manifesta violazione del diritto".
5.2. L'argomentazione con cui la Corte cantonale conferma la pretesa di fr. 89'023.-- degli opponenti è contenuta nel considerando 2 del giudizio impugnato e, come con pertinenza sottolineato nella risposta al ricorso, è formulata in maniera indipendente dalla questione dell'applicazione della norma SIA 118, sulla quale i Giudici ticinesi si pronunciano solo successivamente (giudizio impugnato, consid. 3). Così come esposta, la censura si basa di conseguenza su un'errata premessa.
Oltre che partire da un presupposto sbagliato, l'impugnativa non si confronta d'altra parte con la motivazione che invece è stata data, e alla quale rinvia poi (implicitamente) anche il considerando 6. Nel considerando 2, i cui contenuti non vengono per l'appunto tematizzati nel ricorso, la Corte cantonale spiega in effetti perché la decisione del Pretore di riconoscere la pretesa degli attori e qui opponenti per fr. 89'023.-- oltre a interessi meriti tutela. Una volta ammesso che gli insorgenti devono agli opponenti ancora un importo di fr. 89'023.--, nel considerando 6 respinge quindi, in base a un ragionamento che appare invero più che logico, anche la richiesta di accertare l'inesistenza di qualsiasi credito dei secondi nei confronti dei primi.
5.3. Condivisibile non è infine il tentativo degli insorgenti di negare il versamento dell'importo che è stato riconosciuto agli opponenti richiamandosi all'<ref-law>.
Pure il richiamo al citato disposto si fonda in effetti: da un lato, su presupposti errati, quali l'applicabilità della norma SIA 118; d'altro lato, su presupposti non dimostrati, quali l'erroneità della "conclusione della IIa Camera civile del Tribunale di Appello quanto all'inammissibilità della domanda dei qui ricorrenti che chiedono di essere autorizzati ad intraprendere i lavori di riparazione/completazione a spese dei resistenti", che i ricorrenti si limitato ad affermare, senza confrontarsi con i puntuali argomenti contenuti in merito nel giudizio impugnato.
6.
Per quanto precede, nella misura in cui è ammissibile, il ricorso va respinto. Soccombenti, gli insorgenti devono prendersi carico in solido delle spese giudiziarie della procedura federale e delle ripetibili degli opponenti (art. 66 cpv. 1 e 5 e 68 cpv. 2 e 4 LTF).

Per questi motivi, il Tribunale federale pronuncia:
1.
Nella misura in cui è ammissibile, il ricorso è respinto.
2.
Le spese giudiziarie di fr. 5'500.-- sono poste a carico dei ricorrenti in solido, che rifonderanno agli opponenti, sempre con vincolo di solidarietà, fr. 6'500.-- a titolo di ripetibili per la procedura innanzi al Tribunale federale.
3.
Comunicazione ai patrocinatori delle parti e alla II Camera civile del Tribunale d'appello del Cantone Ticino.