Implement lazy _unsafe_view to fix breakage
Previously, _unsafe_view in core called into self.view which would
redispatch into the view operator and hit our custom lazy view kernel.
Now, _unsafe_view calls into 'view_impl' without using the dispatcher,
and view_impl doesn't call into our view kernel. We need both
_unsafe_view and view to route to lazy impl of view.