Add ActionWatcher on state

First part of adding Action Watchers. Start with state package and will move on to api and apiserver packages next.
I'm looking over [WatchRelations](https://github.com/juju/juju/blob/master/state/watcher.go#L168-L181) and [newLifecycleWatcher](https://github.com/juju/juju/blob/master/state/watcher.go#L217-L234) and I think we could refine this significantly into a func(u *Unit) to get just exactly the Actions we need for the specific Unit.  That would more closely match the way watchers work elsewhere.  I'll see about getting some of these changes in shortly.