Bundle validation: verify with charms.

Validate the bundle with respect to charms in the store.
I'm not *entirely* sure we want to return all the error messages here. Or rather, if we
do return all the error messages, it would be good if they were in a form that was
easy for a client to split into separate messages for display. I'm not sure that
we guarantee that the error messages in VerificationError.Errors do not contain
semicolons.

My first thought was that we could just return the single error, and leave the
multiple errors to be printed by a client-side tool, run independently of the
charm store.

My second thought is that we could pack all the errors into JSON and
have that as part of the returned error message.

i.e. the returned error message would look like:

    bundle verification error: ["charm \"wrdpress\" not found","another error etc"]

Then it's easy for a client to split them out again.

What do you think?