Added CxxTest unit testing for android

Added CxxTest unit testing for android

This requires a modification to the CxxTest library, which is performed by the
initialize_project.sh script (if it downloads the library due to it being missing,
TODO:, should be done regardless of whether CXXTEST variable is set),

Since the CxxTest library prints to output streams, and for android, we need to use
__android_log_write, otherwise nothing will be printed to the android logcat system.

The `compile.sh` script has a new target, `./compile android-tests`
This uses CxxTest's utility cxxtestgen to generate src/main_android_tests.cpp,
and then modifies this file so that it can be used as the main-file for the
android build system.

The target for the CxxTest output to the logcat is "CxxTest". In order compile,
push, run the tests, and see the unit test output, use the following;

./compile.sh android-tests && \
    ./devtools.sh p && \
    ((./devtools.sh logtests) & ./devtools.sh ra)

- First line creates src/main_android_tests.cppm and builds android apk,
- Second line pushes to the android device.
- Third line starts the adb logcat with CxxTest filter, and starts the apk on the
  android device.

Note that these commands might change. See README.md for updated description.

    README.md
    common_build.py
    compile.sh
    devtools.sh
    initialize_project.sh
    src/Android.mk
    src/util/TestAsset.h
    src/util/TestCObjUtil.h
    src/util/TestFile.h
    src/util/TestFileMonitor.h
    src/util/TestFileUtil.h
    src/util/TestLog.h
    src/util/TestLogManager.h
    src/util/TestObjUtil.h
    utils/patches/cxxtest.191addd.printer.patch -> utils/patches/cxxtest.191addd.formatter.patch
    utils/patches/cxxtest.191addd.printer.patch