Well in many cases stype will just be internal for many of them. That doesn't mean they're the same.
Hm, I suppose it might if they have the same sfunc. This is actually where I started but we concluded that we needed some declaration that the aggregates were actually related and would interpret the state the same way and not just that it happened to use the same storage format.