Uniter Action(id string) API client/server

This commit adds the ability for Uniter clients to query Actions from
state.State by id.  The response includes a server error message if the
Action is not present on the state server.
Per my previous comment; is this a common idiom in uniter? To swallow errors and return them in the result?  In that case I guess the `if err == nil { /* foo */ }` approach is more reasonable, but I still think it's surprising.