Test for a dex file with an odd size in a vdex file.

The code in the file is:

class Main {
  public static void main(String[] args) {
    System.out.println("HelloWorld");
  }
}

The generated dex file was then manually edited to:
1) Add 1 to the size value in the dex header.
2) Add 1 byte to the file.
3) Change the checksum in the dex header.
