What are the rules for construction here? Should this be creatable and have a public ctor? Or should it be internal? If the former, what  is the ScriptName that should be specified on this?