move charm.go from testing to charm/testing
Merge remote-tracking branch 'origin/master' into 004-move-testing-charm

Conflicts:
	charm/bundle_test.go
charm: fix tests
Merge remote-tracking branch 'origin/master' into 004-move-testing-charm
state/apiserver: use charmtesting
Merge pull request #40 from rogpeppe/004-move-testing-charm

This is a prereq to pulling the charm package out of core.
ActionResult captures the output and state of an action

test new Action.Fail() functionality

Add some tests for Action.Complete()
Updates per review from @mjs
Add ActionResultsForUnit and ActionResultsForAction to better manage specific prefixes for filtering
Add comments to explain structure of Action.Id() and ActionResult.Id()
use errors.Errorf instead of fmt.Errorf