I think when OP said "what every package does", they meant "for a given package of interest, how is it possible to know/learn/discover what the various activity classes do?"
This is a question I'm also curious about. If this were Windows I'd say it's probably something like Spy++ to uncover the name of the window I wanted to send a message to.
For example, if I wanted to open a Hangouts conversation with a particular contact... where do I start? I mean, the package of interest is Hangouts. But I tried looking at all the activity classes, and the long-form names were being left-justified in the textbox - meaning I couldn't even tell what the full name of the activity class was, all I saw was the same "com.google.android.apps.hangout" before the text is cut off. Some of them have short-form names but the majority do not. But even if I could see the long-form name, I would still need some way to know what values to pass into it, how to format them, etc.
I'm not saying I need someone to give me an API reference, I'm none too shabby at reversing, I'm just unfamiliar with the tools I need to explore this domain. Any way to help identify arbitrary activity class would be appreciated.