Android: Combine generate_jni() and generate_jar_jni() build templates

This is a reland of a531e3b1adef701ac93bff20487dd720748106af, but has changed
enough that the original commit message is not longer accurate. This CL is
now more of a general refactor, and does not fix the issues seen when moving
source files of generate_jni() targets.

Changes from the original CL:
  * Removed Python 3 incompatibility
  * Removed added dependencies on //build/android/gyp/util/build_utils.py
  * Change jni_generator.py to use argparse
  * Do not rename jni output dirs (causes places that use qualified includes
    to break)

Bug: 951701
Change-Id: I94f63eaf55b16f6c18f7f9eb2c37735c31ed2f60
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1617544
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662618}
2 files changed