The code is divided in three crates:
- plume-common, for the ActivityPub module, and some common utils
- plume-models, for the models and database-related code
- plume, the app itself
This new organization will allow to test it more easily, but also to create other tools that only reuse a little part of
the code (for instance a Wordpress import tool, that would just use the plume-models crate)
If we want to add, for instance, streams in the future, we could introduce
a new trait for that, similar to FromActivity or Notify
We also display inbox errors to the "client" if something fails,
which could be useful for debugging.