Fix serialization of request, helpers and viewVars when they contain a closure

`CacheHelper::_writeFile()` fails if you have a closure in any of `$this->request`, `$this->_View->helpers` or `$this->_View->viewVars`. An exception is thrown by the call to `serialize()`.

I think this issue would most commonly occur when using a callback custom detector in `CakeRequest`.
That I don't remember the reason for. I can see how an error page would be more helpful in debug mode. In prod mode the failure to cache shouldn't abort the request.