Faits : A. Par jugement du 4 septembre 2015, le Tribunal de police de la République et canton de Genève a déclaré X._ coupable de vol et d'infraction à la loi fédérale sur les étrangers (LEtr) pour avoir séjourné illégalement en Suisse durant la période du 27 juillet 2014 au 5 janvier 2015 et du 26 janvier 2015 au 12 mars 2015. Il l'a condamné à une peine privative de liberté de 4 mois. Il a ordonné la révocation de deux sursis octroyés par des décisions du ministère public de Fribourg des 17 octobre 2014 et 21 janvier 2015 et condamné X._ aux frais de la procédure. B. Par jugement du 23 juin 2016, la Chambre pénale d'appel et de révision de la Cour de justice de la République et canton de Genève a rejeté l'appel de X._ et l'a condamné aux frais de justice. Elle a taxé les honoraires du défenseur d'office. La cour cantonale a retenu les faits suivants. Le 12 mars 2015, A._ a déposé plainte pénale pour un vol survenu le jour même, entre 13 h 55 et 14 h 55, dans son véhicule stationné sur la voie publique à la rue B._ à Genève. Il a annoncé la disparition de divers documents, de deux paires de lunettes Ray Ban et d'un GPS Tom Tom. Un téléphone portable a été retrouvé au pied du siège passager du véhicule. Cet appareil enregistré au nom de C._, amie de X._, appartenait à celui-ci. C. X._ interjette un recours en matière pénale au Tribunal fédéral contre le jugement du 23 juin 2016. Il conclut, avec suite de frais et dépens, principalement à son acquittement de tous les chefs d'accusation retenus contre lui, au versement d'une indemnité pour la détention préventive subie à tort et au renvoi de l'affaire à la juridiction cantonale pour nouvelle décision sur les frais et dépens des procédures antérieures. Subsidiairement, il requiert le renvoi de l'affaire à l'autorité précédente pour nouvelle décision au sens des considérants. X._ a présenté une demande d'assistance judiciaire.