Ready to review.

I've tried to explain most of the code in the code.

I think that it covers more or less all requirements, But due to the lack of time, may be I've taken some "licenses".

TODO list:
- Better error handling
- Use pagination from the API to load more pictures.

Thanks for your time.

Me gustaria que me comentaras un poco el porque de tu decisión de como este RootVC instancia e incluye como subvista la vista del controlador que vamos a usar para navegar dentro de la app.
Ademas, me preocupa un poco el tema de que a un VC se le añada la subvista de otro VC mediante addSubview.