Faits :
A.
Par jugement du 11 juillet 2019, le Tribunal criminel de l'arrondissement de Lausanne a constaté que A._ s'est rendu coupable d'infraction grave à la LStup et d'infractions à la LEI. Il l'a condamné à une peine privative de liberté de 7 ans, sous déduction de la détention subie avant jugement. Il a ordonné que 13 jours de détention soient déduits de la peine fixée, à titre de réparation du tort moral subi en raison de 26 jours de détention dans des conditions de détention provisoire illicites et a révoqué le sursis octroyé à A._ par le Ministère public de l'arrondissement du Nord vaudois le 9 janvier 2018 tout en ordonnant l'exécution de la peine pécuniaire de 40 jours-amende à 30 fr. le jour. Il a ordonné son expulsion du territoire suisse pour une durée de 10 ans.
B.
Par jugement du 28 novembre 2019, la Cour d'appel pénale du Tribunal cantonal du canton de Vaud a rejeté l'appel formé par A._ à l'encontre de ce jugement. Les faits retenus en lien avec le trafic de stupéfiants sont en substance les suivants.
A B._ notamment, à tout le moins entre le mois de juillet 2017 et le 24 juillet 2018, date de son interpellation, A._, ressortissant du Nigéria, a participé, notamment avec C._ et D._, déférés séparément, à un important trafic de cocaïne. En particulier, entre le mois de juillet 2017 et le 24 juillet 2018, A._ a vendu 60 boulettes de cocaïne, représentant 48 g nets, à différents individus, qui n'ont pas pu être identifiés. Il achetait la boulette au prix de 30 fr. et la revendait au prix de 50 fr., réalisant ainsi un bénéfice total de 1'200 francs. Les taux de pureté moyenne de la cocaïne pour les années 2017 et 2018, pour des quantités de moins de 1 g de cocaïne, étant de respectivement 28% et 38%, A._ a ainsi vendu une quantité pure de cocaïne de 15,84 g de cocaïne. La perquisition du domicile clandestin de A._ a permis la saisie d'un sachet contenant des parachutes de cocaïne, pour un poids total de 18,6 g bruts, et d'une boulette de cocaïne, qui étaient destinés à la vente. L'analyse de la cocaïne saisie au domicile de A._ a révélé des taux de pureté moyenne compris entre 46,8% et 89%, représentant une quantité pure totale de 16,1 g destinés à la vente.
A B._, entre le 9 et le 12 juillet 2018, A._, agissant pour le compte de C._, a reçu et distribué, avec D._, 165 fingers de cocaïne, soit 1'650 g bruts, à différents individus, dont notamment E._, lui aussi déféré séparément. Cette marchandise lui avait été livrée par F._.
A B._, entre le 16 et le 18 juillet 2018, A._, agissant pour le compte de C._, a reçu et distribué 261 fingers de cocaïne, soit 2'610 g bruts, à différents individus, dont notamment G._, également déféré séparément. Cette marchandise lui avait été livrée par F._.
Le taux de pureté moyenne de la cocaïne pour 2018, pour des quantités de 1 à 10 g de cocaïne, étant de 55%, A._ a ainsi reçu et distribué une quantité pure de 2'343 g de cocaïne.
C.
A._ forme un recours en matière pénale au Tribunal fédéral contre le jugement de la Cour d'appel pénale. Il conclut, en substance, avec suite de frais et dépens, principalement, à la réforme du jugement attaqué en ce sens qu'il est condamné à une peine privative de liberté de 1 an, sous déduction de la détention préventive et anticipée déjà subie. A titre subsidiaire, il conclut à l'annulation du jugement entrepris et au renvoi de la cause à l'autorité précédente pour nouvelle décision. Il sollicite par ailleurs le bénéfice de l'assistance judiciaire.
Considérant en droit :
1.
Le recourant conteste avoir participé à la réception et à la distribution d'une quantité pure de 2'343 g de cocaïne en juillet 2018. Invoquant une violation de l'art. 9 Cst., il se plaint d'arbitraire dans l'appréciation des preuves.
1.1. Le Tribunal fédéral n'est pas une autorité d'appel, auprès de laquelle les faits pourraient être rediscutés librement. Il est lié par les constatations de fait de la décision entreprise (art. 105 al. 1 LTF), à moins qu'elles n'aient été établies en violation du droit ou de manière manifestement inexacte au sens des art. 97 al. 1 et 105 al. 2 LTF, soit pour l'essentiel de façon arbitraire au sens de l'art. 9 Cst. Une décision n'est pas arbitraire du seul fait qu'elle apparaît discutable ou même critiquable; il faut qu'elle soit manifestement insoutenable et cela non seulement dans sa motivation mais aussi dans son résultat (ATF 145 IV 154 consid. 1.1 p. 155 s.; 143 IV 241 consid. 2.3.1 p. 244). En matière d'appréciation des preuves et d'établissement des faits, il n'y a arbitraire que lorsque l'autorité ne prend pas en compte, sans aucune raison sérieuse, un élément de preuve propre à modifier la décision, lorsqu'elle se trompe manifestement sur son sens et sa portée, ou encore lorsque, en se fondant sur les éléments recueillis, elle en tire des conclusions insoutenables (ATF 144 II 281 consid. 3.6.2 p. 287 et les références citées). Le Tribunal fédéral n'entre en matière sur les moyens fondés sur la violation de droits fondamentaux que s'ils ont été invoqués et motivés de manière précise (art. 106 al. 2 LTF; ATF 143 IV 500 consid. 1.1 p. 503). Le Tribunal fédéral n'entre pas en matière sur les critiques de nature appellatoire (ATF 145 IV 154 consid. 1.1 p. 155 s. et les références citées).
1.2. Pour établir les faits, la cour cantonale a pris en considération le rapport de police établi le 9 janvier 2019, qui décrit le mode opératoire du réseau de trafiquants de cocaïne dans lequel était impliqué le recourant. Il en ressort que ce réseau était constitué de fournisseurs, d'organisateurs, de transporteurs, de dépositaires et de grossistes. Le grossiste en cocaïne commandait et payait sa marchandise à un fournisseur établi aux Pays-Bas. Ce fournisseur contactait un organisateur pour faire importer la drogue en Suisse et la faire acheminer jusqu'à un dépôt par un transporteur international. La drogue était conditionnée en fingers, marqués d'un code pour permettre au dépositaire d'identifier les lots dont il disposait ainsi que leur destinataire. Une fois le dépôt ravitaillé, le dépositaire contactait les grossistes les uns après les autres depuis un numéro réservé à cet effet afin de fixer un rendez-vous pour leur remettre la marchandise. Dans certains cas, c'était le grossiste qui contactait le dépositaire au moyen d'un numéro de téléphone que lui avait transmis le fournisseur. Il arrivait également que la communication entre le grossiste et le dépositaire se fasse par l'intermédiaire d'un complice localisé à l'étranger de manière à éviter tout lien téléphonique direct entre dépositaire et grossiste et ainsi renforcer la sécurité du dépôt. Après cette prise de contact, le grossiste - ou un transporteur interne qu'il avait mandaté - rencontrait le dépositaire afin de récupérer la marchandise. Il devait alors s'acquitter de frais de transport auprès du dépositaire à hauteur de 70 ou 80 fr. par finger livré (jugement cantonal consid. 4.2 p. 17).
En ce qui concerne l'implication du recourant, l'enquête de la police de sûreté a permis, selon la cour cantonale, d'établir que le téléphone portable du recourant contenait de nombreux contacts enregistrés sous la forme d'un " code montant ", soit d'un code désignant un client et d'un montant correspondant aux frais de transport dus par ce dernier. Un transporteur international, à savoir F._, avait procédé à des livraisons de cocaïne dans le quartier H._ le 9 juillet 2018 entre 05h32 et 05h47, ainsi que le 16 juillet 2018 entre 05h38 et 05h43. Au même moment, soit le 9 juillet entre 04h48 et 05h55 et le 16 juillet entre 05h06 et 05h40, le recourant avait eu plusieurs entretiens téléphoniques avec C._. Peu après ces deux ravitaillements, le recourant avait entrepris de contacter les différents destinataires des lots de cocaïne qui étaient répertoriés sous la forme de " code montant " dans son téléphone et, dans le même temps, il avait eu plusieurs contacts téléphoniques avec un autre trafiquant, à savoir D._. Il l'avait même rencontré le 17 juillet 2018 alors qu'il portait le sac à dos utilisé par C._ pour ses livraisons de cocaïne. Peu après, D._ avait eu plusieurs conversations téléphoniques avec un grossiste qui le mandatait régulièrement pour récupérer ses lots. Il ressortait enfin du rapport de police que le recourant avait physiquement rencontré un de ses contacts le 16 juillet 2018, soit le n° xxx identifié comme étant G._, chez qui plusieurs fingers marqués du code " xxx " avaient pu être retrouvés lors de son arrestation le 26 septembre 2018 (jugement cantonal, consid. 4.2, p. 17 s.).
Au vu de ces éléments, la cour cantonale a acquis la conviction que le recourant avait agi au sein de ce réseau en qualité de dépositaire, sur délégation de C._, pour la réception et la distribution des 165 fingers de cocaïne et de 261 fingers de cette même drogue selon les faits décrits dans l'acte d'accusation.
1.3. Le recourant reproche à la cour cantonale d'avoir accordé une importance prépondérante au rapport de police du 9 janvier 2019 au regard de ses propres déclarations. Il fait valoir en substance que, s'il a effectivement contacté 19 des 38 contacts répertoriés dans son téléphone, à qui la cocaïne devait être livrée, c'était pour rendre service à C._ et les informer que ce serait lui qui livrerait la cocaïne. Il soutient cependant s'être ravisé et prétend qu'il n'a pas procédé aux livraisons. Aucune preuve directe ne le relierait aux livraisons des 9 et 16 juillet 2018.
1.3.1. La cour cantonale a rappelé que les explications du recourant, qui avaient varié au cours de ses auditions, révélaient qu'il ne manquait pas d'imagination pour tenter de justifier ses agissements. Sa dernière version, qui consistait à dire qu'il s'était désisté avant d'avoir même reçu la drogue, n'était pas plus crédible que les précédentes. Elle a souligné qu'il n'était pas concevable qu'un dépositaire prenne le risque d'appeler ses clients avant même d'avoir été ravitaillé, comme relevé dans le rapport de police. Les éléments révélés par l'enquête ainsi que leur enchaînement chronologique ne pouvaient pas être le fruit du hasard et suffisaient à démontrer que le recourant avait été ravitaillé les 9 et 16 juillet 2018 et qu'après avoir pris contact avec les bénéficiaires, il avait procédé, avec l'aide de D._ notamment, à la distribution des différents lots. Le fait qu'il n'ait pas contacté l'intégralité de ses contacts, que d'autres trafiquants ne l'aient pas identifié et que ses empreintes n'aient pas été retrouvées sur la drogue saisie ne changeait rien à ce constat.
1.3.2. Le recourant ne conteste pas les éléments objectifs révélés par l'enquête qui lui sont imputés et sur lesquels la cour cantonale s'est fondée pour asseoir sa conviction concernant la participation du recourant à la distribution des deux lots de fingers. Il ne discute pas davantage leur pertinence dans l'établissement des faits qui lui sont reprochés. Il ne conteste pas avoir fourni des versions fantaisistes sur les raisons de ses appels à ses différents contacts et n'expose pas en quoi la cour cantonale aurait arbitrairement considéré que sa dernière version, faisant état d'un désistement de sa part, ne serait pas plus crédible que les précédentes au vu des éléments factuels qui lui sont imputés. En outre, le procédé du recourant qui se borne à apprécier ses déclarations différemment de l'appréciation cantonale sans exposer en quoi celle-ci serait arbitraire s'avère appellatoire et, partant, irrecevable. Il en va de même lorsqu'il invoque l'absence d'empreinte ou de trace ADN, étant rappelé que lorsqu'aucune preuve directe n'est disponible, une preuve indirecte, fondée sur des indices, peut entrer en considération, s'ils sont retenus de manière exempte d'arbitraire et apparaissent convaincants (arrêt 6B_400/2015 du 14 décembre 2015 consid. 6.4 et la référence citée). En l'occurrence, la Cour d'appel pénale a fondé son appréciation sur un faisceau d'indices convergents qui lui permettait de retenir qu'il était le fournisseur de G._. Le recourant ne consacre aucune discussion à ces éléments. Son grief d'arbitraire est également irrecevable sur ce point.
Le recourant fait enfin valoir que la cour cantonale aurait arbitrairement retenu qu'il avait contacté l'ensemble des destinataires de la drogue, soit les 38 contacts découverts dans son smartphone, alors que seules 19 personnes avaient été contactées par ses soins en lien avec le dépôt des 261 fingers. A cet égard, le journal d'appel de son smartphone a certes permis d'établir qu'il avait contacté 19 personnes entre le 16 et le 18 juillet 2018. Toutefois, le rapport de police mentionne aussi que des appels ont eu lieu également dans la semaine du 9 au 12 juillet et que pour les autres contacts pour lesquels des traces d'appel n'avaient pas été retrouvées, il se pouvait que les personnes eussent été atteintes par un autre moyen, étant rappelé que le recourant a eu des contacts le 9 juillet avec C._ et que F._ est venue ravitailler un dépôt ce même jour. Le recourant ne discute pas non plus ces constatations et ne démontre pas en quoi celles-ci seraient entachées d'arbitraire. Son grief est également irrecevable.
En définitive, en se fondant sur une constatation exempte d'arbitraire, la cour cantonale pouvait, sans violer le droit fédéral, retenir que le recourant s'est rendu coupable d'infraction grave à la LStup.
2.
Le recourant critique la peine prononcée, qu'il juge excessive. Il fait valoir que la quantité de stupéfiants retenue ne suffit pas à justifier la peine.
2.1. L'art. 47 CP prévoit que le juge fixe la peine d'après la culpabilité de l'auteur. Il prend en considération les antécédents et la situation personnelle de ce dernier ainsi que l'effet de la peine sur son avenir (al. 1). La culpabilité est déterminée par la gravité de la lésion ou de la mise en danger du bien juridique concerné, par le caractère répréhensible de l'acte, par les motivations et les buts de l'auteur et par la mesure dans laquelle celui-ci aurait pu éviter la mise en danger ou la lésion, compte tenu de sa situation personnelle et des circonstances extérieures (al. 2). La culpabilité de l'auteur doit être évaluée en fonction de tous les éléments objectifs pertinents, qui ont trait à l'acte lui-même, à savoir notamment la gravité de la lésion, le caractère répréhensible de l'acte et son mode d'exécution. Du point de vue subjectif, sont pris en compte l'intensité de la volonté délictuelle ainsi que les motivations et les buts de l'auteur. A ces composantes de la culpabilité, il faut ajouter les facteurs liés à l'auteur lui-même, à savoir les antécédents, la réputation, la situation personnelle (état de santé, âge, obligations familiales, situation professionnelle, risque de récidive, etc.), la vulnérabilité face à la peine, de même que le comportement après l'acte et au cours de la procédure pénale (ATF 142 IV 137 consid. 9.1 p. 147; 141 IV 61 consid. 6.1.1 p. 66 s.; arrêt 6B_346/2018 du 23 juillet 2018 consid. 1.1). Le juge dispose d'un large pouvoir d'appréciation dans le cadre de la fixation de la peine.
Le Tribunal fédéral n'intervient que lorsque l'autorité cantonale a fixé une peine en dehors du cadre légal, si elle s'est fondée sur des critères étrangers à l'art. 47 CP, si des éléments d'appréciation importants n'ont pas été pris en compte ou, enfin, si la peine prononcée est exagérément sévère ou clémente au point de constituer un abus du pouvoir d'appréciation (ATF 144 IV 313 consid. 1.2 p. 319; 136 IV 55 consid. 5.6 p. 61). L'exercice de ce contrôle suppose que le juge exprime, dans sa décision, les éléments essentiels relatifs à l'acte ou à l'auteur dont il tient compte, de manière à ce que l'on puisse constater que tous les aspects pertinents ont été pris en considération et comment ils ont été appréciés, que ce soit dans un sens aggravant ou atténuant (art. 50 CP). Le juge peut passer sous silence les éléments qui, sans abus du pouvoir d'appréciation, lui apparaissent non pertinents ou d'une importance mineure. La motivation doit justifier la peine prononcée, en permettant de suivre le raisonnement adopté. Un recours ne saurait toutefois être admis simplement pour améliorer ou compléter un considérant lorsque la décision rendue apparaît conforme au droit (ATF 144 IV 313 consid. 1.2 p. 319; 136 IV 55 consid. 5.6 p. 61; arrêts 6B_1228/2019 du 10 décembre 2019 consid. 4.1; 6B_1235/2019 du 14 novembre 2019 consid. 2.1).
En matière de trafic de stupéfiants, il y a lieu de tenir compte plus spécifiquement des éléments suivants. Même si la quantité de drogue ne joue pas un rôle prépondérant, elle constitue sans conteste un élément important. Elle perd cependant de l'importance au fur et à mesure que l'on s'éloigne de la limite, pour la cocaïne de 18 grammes (ATF 138 IV 100 consid. 3.2 p. 103 s.), à partir de laquelle le cas doit être considéré comme grave au sens de l'art. 19 al. 2 let. a LStup (ATF 121 IV 193 consid. 2b/aa p. 196). Le type de drogue et sa pureté doivent aussi être pris en considération (ATF 122 IV 299 consid. 2c p. 301 s.; 121 IV 193 consid. 2b/aa p. 196). Le type et la nature du trafic en cause sont aussi déterminants. L'appréciation est différente selon que l'auteur a agi de manière autonome ou comme membre d'une organisation. Dans ce dernier cas, il importera de déterminer la nature de sa participation et sa position au sein de l'organisation. L'étendue du trafic entrera également en considération. Un trafic purement local sera en règle générale considéré comme moins grave qu'un trafic avec des ramifications internationales. Enfin, le nombre d'opérations constitue un indice pour mesurer l'intensité du comportement délictueux. S'agissant d'apprécier les mobiles qui ont poussé l'auteur à agir, le juge doit distinguer le cas de celui qui est lui-même toxicomane et agit pour financer sa propre consommation de celui qui participe à un trafic uniquement poussé par l'appât du gain (arrêts 6B_1192/2018 du 23 janvier 2019 consid. 1.1; 6B_780/2018 du 9 octobre 2018 consid. 2.1; 6B_807/2017 du 30 janvier 2018 consid. 2.1; 6B_189/2017 du 7 décembre 2017 consid. 5.1).
2.2. En l'espèce, la cour cantonale a relevé que la culpabilité du recourant était écrasante. Elle a souligné qu'il avait vendu de la cocaïne de manière régulière et pour des quantités non négligeables. Il s'était en plus adonné à une activité de dépositaire portant sur une quantité "effarante" de cette substance. Il avait agi de manière parfaitement organisée, au sein d'un réseau de trafiquants international, et selon un système bien rôdé et efficace. Son rôle, au sein de la bande de trafiquants dans laquelle il oeuvrait, était important et nécessaire, dès lors que c'était en particulier grâce à lui que la drogue avait pu être mise sur le marché. Il avait agi sans égard aux risques que les stupéfiants qu'il recevait, distribuait et vendait, faisaient courir à la population et sans scrupule aucun pour la santé d'autrui. Il s'était comporté de manière égoïste et par pur appât du gain. Il y avait encore lieu de tenir compte du fait qu'il avait persisté à enfreindre la législation sur les étrangers, malgré une précédente condamnation pour entrée et séjour illégaux. A décharge, la cour cantonale a retenu le parcours de vie difficile du recourant et ses aveux partiels, qui n'avaient toutefois porté que sur une faible part de son activité délictueuse. Sa prise de conscience était faible et ses excuses et regrets devaient être considérés comme étant de circonstances.
2.3. Le recourant reproche à l'autorité cantonale d'avoir accordé un poids prépondérant à la quantité de drogue mise sur le marché. Ce faisant, il procède par pure affirmation. Comme cela ressort des éléments précités, la cour cantonale n'a pas motivé la peine sur la seule base de la quantité, dont il est avéré qu'elle est importante s'agissant d'une quantité pure de près de 2'400 g de cocaïne, mais a exposé quels autres éléments étaient pertinents dans l'appréciation de la gravité de la culpabilité du recourant, éléments dont le recourant ne discute pas la pertinence et qui correspondent à ceux énoncés par la jurisprudence (consid. 2.1). Autant qu'il se réfère à son absence de pouvoir décisionnel au sein de l'organisation et au fait qu'il n'était qu'un pion interchangeable, il avance des éléments qui ne ressortent pas du jugement attaqué et qui sont, partant, irrecevables. Il fait valoir de manière tout aussi appellatoire et donc irrecevable, en substituant son appréciation à celle de la cour cantonale, que ses pleurs ne sauraient être considérés comme des pleurs de circonstances.
Enfin, il est inévitable que l'exécution d'une peine ferme d'une certaine durée ait des répercussions sur la vie professionnelle et familiale du condamné. Ces conséquences ne peuvent conduire à une réduction de la peine qu'en cas de circonstances extraordinaires (cf. parmi d'autres, arrêt 6B_1446/2019 du 30 mars 2020 consid. 2.1). Le recourant ne prétend ni ne démontre que de telles circonstances seraient réalisées en l'espèce. Le fait qu'il déclare qu'il comptait s'établir en Suisse alémanique avec sa fiancée, n'est pas suffisant, dès lors que cette situation ne diffère pas sur ce point de celle de nombreux autres condamnés.
Le recourant ne discute pas, pour le surplus, la fixation de la peine sous un autre angle.
2.4. En définitive, compte tenu de l'ensemble des circonstances, la cour cantonale n'a pas abusé de son pouvoir d'appréciation en qualifiant d'écrasante la culpabilité du recourant et c'est sans violer le droit fédéral qu'elle a fixé à sept ans la durée de la peine privative de liberté prononcée.
3.
Il résulte de ce qui précède que le recours doit être rejeté dans la mesure de sa recevabilité. Comme ses conclusions étaient vouées à l'échec, l'assistance judiciaire ne peut être accordée (art. 64 al. 1 LTF). Le recourant devra donc supporter les frais (art. 66 al. 1 LTF), dont le montant sera toutefois fixé en tenant compte de sa situation financière.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté dans la mesure où il est recevable.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'200 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 29 avril 2020
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
Le Greffier : Dyens