Add types for lifecycle events.

We should describe the SIGTERM behavior somewhere, too. Probably in a doc rather than there, though, assuming that we (i.e., Docker) will send SIGTERM regardless whether PreStop is configured or not (i.e., SIGTERM is not an action type).