added check and tests to stop add-units earlier if the destination machine doesn't exist, lp:1384732
use errors annotate instead of fmt.Errorf
fixed build errors
Make upgrades look in releases dir for tools
More test fixes
Fix compile error
Merge pull request #998 from mattyw/fix-build-fail

fixed build errors

These tests were failing to build
Merge pull request #969 from mattyw/add-unit-fails-too-late

add-unit needs to fail earlier if destination machine doesn't exist

Bug fix for https://bugs.launchpad.net/juju-core/+bug/1384732

juju add-unit my-service --to 3 fails too late if machine 3 doesn't exist.
Merge pull request #996 from wallyworld/tools-upgrade-fix

Make upgrades look in releases dir for tools

Modify upgrades/toolsstorage.go so it looks in the legacy tools dir "releases" when looking for tools to import into the state server blob store. It also only looks for "released" tools as this is all that were available prior to 1.21.