I was going to suggest the word "Shared" as opposed to the word "Instance" that's implied by default 'til I remembered that I don't actually do this stuff so I deleted it.
Yes, Phil is right as you found out. Scripts can contain a class or a namespace. Since no instance is taken from the class and that the code is hidden, there is no benefit in using a class. In fact it is rather the opposite: since classes hide everything you are restricted when looking at objects within it. For example, the command ]display cannot be used to show you the contents of expressions involving fields in your command (or your command has stopped and you wish to see their contents manually). Same with ]umonitor that cannot be used on fns in classes, even if public. In general I recommend to use namespaces instead of classes. In 13.1 command ]UNEW has been modified to generate a namespace.