AndroidDist: Caching is working as is validating build_tools

Removed class attributes that were non-concrete. Changed the validate
pipeline to just check for installed sdks and build tools, not set
global attributes.
Change validated_binaries to a set

I didn't see any reason to have a key/value for verified tools. Set
has fast look up and will resist dups.
AndroidDist: change __repr__ to print the sets() as lists()

A lot easier to read, and it won't matter that the output is slightly
misleading since there are no instance methods meant to be used
by the user.

Still may be asked to change it, we'll see. I would understand.
CLean up debugging code and add some docstrings