Refactored discovery API

Signed-off-by: Kai Kreuzer <k.kreuzer@telekom.de>
Added UpnpDiscoveryService and a HueBridge discovery participant

Signed-off-by: Kai Kreuzer <k.kreuzer@telekom.de>
implemented tracker behaviour for listeners

Signed-off-by: Kai Kreuzer <k.kreuzer@telekom.de>
Changed behavior of abortScan in AbstractDiscoveryService and fixed getThingTypeUID in ThingUID.
Adapted discovery tests according to new API.

Signed-off-by: Dennis Nobel <d.nobel@external.telekom.de>
Merge branch 'discovery-refactoring' into integration-74

Signed-off-by: Dennis Nobel <d.nobel@external.telekom.de>

Conflicts:
	binding/org.eclipse.smarthome.binding.hue/META-INF/MANIFEST.MF
Added new methods startScan(bindingId), stopScan(bindingId), supportsDiscovery(bindingId) and supportsDiscovery(thingType) to DiscoveryServiceRegistry.
Added support for multiple discovery services for the same type.
Fixed not stopping scheduler, when start fails in AbstractDiscoveryService.
Adapted tests.

Signed-off-by: Dennis Nobel <d.nobel@external.telekom.de>
Merge branch 'discovery-refactoring' into integration-74

Signed-off-by: Dennis Nobel <d.nobel@external.telekom.de>