feat!(core): make some classes internal
feat(core): add command pre and post events
feat(core): add stateful entities support Supports injecting entities depending on the current nostale client. Useful for remote, pipe client etc.