/// <summary>
 /// Executes the framework with the goal of calling a facet
 /// </summary>
 public FrameworkExecutionResult ExecuteFacet <TFacet>(
     string methodName, params object[] arguments
     )
 {
     return(Execute(new JsonObject()
                    .Add("method", "facet-call")
                    .Add("methodParameters", new JsonObject()
                         .Add("facetName", typeof(TFacet).Name)
                         .Add("methodName", methodName)
                         .Add(
                             "arguments",
                             Facet.SerializeArguments(
                                 Facet.FindMethodByName(typeof(TFacet), methodName),
                                 arguments
                                 )
                             )
                         )
                    .ToString()
                    ));
 }