Display Packrat pending actions in the Action Center

This change suggests snapshot, restore, or clean actions in the Action Center according to the state reported by Packrat. Rough overview:

- The server tracks the last known resolved state of the Packrat lockfile and libraries.
- When the current state is not the last known resolved state, the server asks Packrat for a list of actions that would resolve the state. This list is included in the package state sent to the client.
- The client shows the list of actions in the Action Center, along with a button to perform groups of actions. 

It's stable enough to build on, although it does not contain all of the aesthetic changes we've discussed and will likely still require some tuning for accuracy. 
Thanks, I'll update this to use SessionPersistentState.