Refactoring DO NOT MERGE

Noch nicht mergen, ist noch nicht fertig.

Hier mal ein Vorschlag zum Refactoring. Die Idee ist im Wesentlichen, CrowdMusicClient und CrowdMusicServer als die zentralen Interfaces für nahezu alle Funktionen (außer die der Services, also HTTP-Server und MediaServer) zu etablieren. Zugriff bekommt man über die Interfaces IOnClientRequestListener und IOnServerRequestListener.

Dann hab ich den WLAN AP Dialog in die MainActivity verschoben. Momentan noch sinnlos, da die Anwendung nicht  auf den Dialog wartet und einfach die ServerActivity startet, aber da kann man sicher was machen :) Um auf die IP-Änderung zu reagieren habe ich dem HTTP-Server eine Rekonfigurationsmethode spendiert, mit der man die IP/Port ändern kann. Hab auch die IP-Erkennung komplett umgebaut, damit man jetzt auch die IP von nem AP zuverlässig auslesen kann.

Voting hab ich mal rausgeschmissen (zumindest das Backend), weil man das wirklich über nen einfaches GET machen sollte. Falls es doch nicht besser geht, kann man es immer noch wieder reinmergen.

Ansonsten noch hier und da einige Änderungen, ist ja alles unten zu sehen. Gebt einfach mal euren Senf dazu ab.

TODO
>Refactor CrowdMusicPlaylist (an CrowdMusicServer binden und auf Arraylist umbauen)
>Refactor AsyncTasks/Handlers
>Register Clients
>Voting