set minSdkVersion="5" to match FDroid's

This should help us keep in sync with that code base.
index.xml generation only works on android-8 and above

This fixes one issue on < android-9, but there are many others with XML
output that are not yet fixed.
wifi is not technically required, add uses-feature

Setting a WIFI permission automatically makes wifi a required feature, this
change removes that requirement.
move generateQrCode() to static method in Utils

This makes it easy to use in multiple Activities.
only instantiate NsdHelper on Android versions that support NSD
local repo port, IP and IP String as app global

This stores globally variables for the IP address, port number, and
string version of the IP address. They can then be easily used elsewhere,
in other Activities, etc.
create wizard for bootstrapping with QR Code and wifi
rename KerplappRepo to LocalRepo

This should hopefully make more sense in the context of being integrated
into FDroid.
Populate INDEX_CERT_ALIAS keystore slot when null.

In some cases it may be possible that a keystore file is present on disk
but does not have a keypair & self signed certificate stored in the
INDEX_CERT_ALIAS slot. Prior to this commit this would result in the
crash described in Bug #2999.

Instead of only generating the INDEX_CERT_ALIAS cert/keypair when the
keystore is first created we now separate keystore creation
& INDEX_CERT_ALIAS population so that it happens as required with loaded
keystores as well as newly created keystores.

Fixes #2999