Propagate exceptions from delegate

When using the delegatesTo method, exceptions thrown by the delegate
are wrapped in InvocationTargetException due to method invocation.
The original exception should be propagated instead.