Open
Description
Currently both the plugin and runtime library as single modules. Maybe there's an element of personal preference here but I think splitting them up into more single purpose modules (and possibly sub-packages) would make the code easier to understand and work with.
It would also add some flexibility for optimisations such as only importing the parts that are required, e.g. excluding client/server code if not needed.
I'd be happy to work on splitting these modules up if there are no objections (maybe at a time when there are fewer open PRs). @danielgtaylor