Cinnamon is developed to be used by a novice user. That is why (among other things) cinnamon is packaged abruptly, so you can not remove a lot of things. The point is that: they want provide all in a simple way to the end user. If we do not create strong dependencies, then a non-experienced user may not know what he must be installed in order to have a fully functional desktop.
The applets, desklets and extensions (which truly make the desktop), contain no ways to declare hard dependencies to a package. Therefore, the dependence of all extensions (applets, desklets...) are included inside cinnamon package. Then for at least the standards extensions that developers of cinnamon provide, can be used without need to know or install anything.
What you request, is then, go in an opposite direction of what the Cinnamon devs try to do. Could be possible on the future, if will be created a way to create hard dependencies in to the cinnamon extensions.