Smali-based tests for experimental interface default methods.

Obviously needs to run under ART or a Java 8 Language runtime and compiler.

When run a Main.smali file will be generated by the
test/utils/python/generate_smali_main.py script. If we run with --jvm we will
use the tools/extract-embedded-java script to turn the smali into equivalent
Java using the embedded Java code.

When updating be sure to write the equivalent Java code in comments of the smali
files.

Care should be taken when updating the generate_smali_main.py script. It must
always return equivalent output when run multiple times.

To update the test files do the following steps:
    <Add new classes/interfaces>
    <Add these classes/interfaces to ./smali/classes.xml>
    JAVA_HOME="/path/to/java-8-jdk" ../run-test --use-java-home --update --jvm --host 956-default-smali
    git add ./smali/classes.xml ./expected.txt