Return a Try that will catch specified exceptions when map / flatMap called
For use with liftM / liftM2 and For Comprehensions (when Try is at the top level)
Comprehender for performant for-comprehensions for Try
Behaviour in cross-type flatMap is to create an empty instance for Failures, but always pass Successes on
Monad transformer for JDK Try
TryT consists of an AnyM instance that in turns wraps another Monad type that contains an Try
TryT>>>
TryT allows the deeply wrapped Try to be manipulating within it's nested /contained context
Build another stage in try / catch / finally block
This defines the CheckedFunction that will be run in the main body of the catch block
Next step can define the finally block
Will execute and run the CheckedFunction supplied and will automatically
safely close any Closeables supplied during init (either individually or inside an iterable)