Allow user-defined auto-config order (LBANDROID-12)

This adds the ability to specify the configuration search locations and
their order. The first location searched is no longer AndroidManifest.xml
but is now jar:file://assets/logback.xml, which can contain a <findInclude>
element that specifies a group of <include> elements. The first
file/resource/URL specified by one of the <include> elements is used as the
logback config.

To specify AndroidManifest.xml (or any other file in the JAR), use the
"resource" attribute of the <include> tag. The "file" attribute is used
to specify a file on the device's filesystem (e.g., the SD card, assuming
granted application privileges).

Example: This configuration searches a path on the SD card for a logback
XML config. If it's not present or unreadable (e.g., not privileged), it
searches AndroidManifest.xml. If no config is found there, it remains
silent.

  <configuration>
     <findInclude>
        <include file="/sdcard/myapp/logback.xml" />
        <include resource="AndroidManifest.xml" />
     </findInclude>
  </configuration>
Add XML tag to set Android properties (LBANDROID-13)

Config properties were recently added for the application's package name
and data directory. Their values were determined by reading the Android
Manifest, which is a relatively expensive process. Even if configs did
not contain these application properties, the manifest was read anyway.

This change adds a new XML element (<appProps/>) to explicitly request
setting the application properties so that only configs that contain
those properties incur the cost of reading the manifest.