Handling ValidationExceptions in interceptors

Please do not merge it yet, it's a work in progress related with #858 

My idea here is to extract classes to better deal with exception handling so then we could reuse the exception handling code to develop that  `@ValidationInterceptor ` feature that @lucascs proposed.

I've implemented a `Try` class, similar to the scala's Try monad. Is not a proper monad here, but I think it's a nice abstraction to handle exceptions, what do you think? @lucascs @Turini @garcia-jj 
We should either make `Try<T>` receiving a `Callable<T>`, or remove the result from `Success`, since Void is always null.