Action-Schema JSON validation

charm.ActionSpec now has a ValidateParams method which accepts an
unmarshaled JSON document, and validates it.  If it is valid, the
method returns true; otherwise, it returns false and a list of
errors returned by gojsonschema.

WIP, opened PR for comments
If possible I'd like to set this aside as a bugfix for gojsonschema; Mark really indicated that he's interested in us getting something workable put together from end to end before resolving issues with external code.  I'll definitely respond to Issues opened against binary132/gojsonschema; otherwise, I'll open an Issue myself.