Feature/entities/disk

I would suggest putting all the content of this inside a private or internal functional. Two advantages:

* No need to use `strongSelf` inside the function.
* As it is it's easy to introduce bugs by using `self`.

I did this in NetworkFetcher, I think.