public static void AddDelegateMethod <T1, T2, T3, T4>(this Environment environment, string name, Action <T1, T2, T3, T4> callback)
 {
     environment.AddBoundMethod(name, callback.Target, callback.Method);
 }
 public static void AddDelegateMethod <TResult, T1, T2, T3, T4>(this Environment environment, string name, Func <T1, T2, T3, T4, TResult> callback)
 {
     environment.AddBoundMethod(name, callback.Target, callback.Method);
 }