Caching is working. Small delay when the tableview loads but after that its smooth.
Moved cell height calculation to viewWillAppear. Cleaned up code.