[Android] Improve make_apk's Which() implementation.

Make it behave more like which(1), in that it just returns a string if a
certain binary is found in PATH and None otherwise.

This also happens to fix a few corner cases, such as a path being found
but actually being a directory, as just os.access() is not enough to
make sure a file is a file.

While here, also provide a more helpful message when the `android'
binary is not found.
Merge pull request #2152 from rakuco/improve-makeapk-which

[Android] Improve make_apk's Which() implementation.