Add clarifying comments for Action constructor

Explain what's happening inside of the Action.prototype methods, especially aggregate() and profile(), which can be pretty confusing just reading through the code.