SuchAlgorithmus Überarbeitung Teil 2.2

Die zentrale Methode in der SearchEngine liefert nun keine
ArrayList<RecipeSearchResult> mehr, sondern trägt RezeptID und matchRate
direkt in die Datenbank ein und gibt true (falls mindestens ein Ergebnis
gefunden wurde) bzw false zurück.
Außerdem ist die SearchEngine jetzt in der Lage Ergebnisse entsprechend
der Einstellungen canContainNonSelected(Ings|Tags) zu liefern.

Die Suchoptionen werden jetzt durch ein RelativeLayout angezeigt, d.h.
Switches sind nun in der Mitte (yay).
Die genaue Formulierung von Option #5 bereitet mir noch etwas Probleme.
Letztendlich wird dadurch bestimmt, ob in der Datenbank-Query zwischen
den beiden  (Ing/Tag LIKE ?...)-Blöcken AND oder OR steht.
Anschaulich heißt das: Wenn ich Zutaten und Tags auswähle und Option #5
auf Ja steht (standard) dann werden nur Rezepte gelistet, die (beliebig
viele|alle)Zutaten UND (beliebig viele|alle) Tags enthalten.
Hier ist "beliebig" etwas schwierig, da beliebig "min 1" bedeutet.
Bzw brauchen wir Option #5 überhaupt?