TC: Improved exception handling in Template::Controller

Exceptions thrown by CodeRefs in the template variables now have special
handling. They are now each wrapped with a try/catch block and
exceptions are thrown as warnings. This was needed to make sure they at
least make it to the console, since TT does not pass them into the
template errors correctly (and they are not *template* errors, they are
errors in the perl code that is called via CodeRefs).

For the template rendering, the offending CodeRef returns the error
message as a string. This is not ideal, but the main problem was that TT
would swallow the exception and then print a useless message, making it
impossible to debug. The warning now solves this problem which is the
main purpose. CodeRefs in tt vars are developer bugs and should not ever
happen in production...