Improve errors for cells

This set of changes resolve #3945 I think.  I've added a new framework for missing cell views as the MissingViewException references a controller which is total lies.

This also fixes an issue where relative paths would be inflected incorrectly, and solves broken layouts when missing cell/element exceptions are raised mid page.
There is no reason to run this on a loop. `ob_end_clean()` deletes the topmost buffer