[r=wallyworld] Move tools functionality to environs.tools
This is a refactoring branch to move functionality from agent.tools to environs.tools, as well as refactor some of the find tools methods. The work is in preparation for the introduction of simplestreams tools metadata. Basically, the stuff in environs.tools now is responsible for building, uploading, and reading tools from env storage. The stuff in agent.tools is about managing and unpacking the tools tarballs on disk for the agent. The env stuff to read the tools will be replaced by simplestreams logic, and the upload tools will need to update simplestreams metadata. Also, to avoid import loops in subsequent branches, the core tools structs were moved to a top level tools package.