Add SetSubscribers and AddSubscribers functions and tests

Added AddSubscribers() - fetches any existing subscribers and adds them to the new subscriber list.

Added SetSubscribers() - uses the logic that Subscribe() had to make the effect clearer
Changed Subscribe() to just call SetSubscribers()

Added test cases:
AddSubscribers - when called twice with a single distinct subscriber URL each time that there are two subscriptions

SetSubscribers - call AddSubscribers() once, call SetSubscribers() once with three different URLs, verify there are only three subscriptions, call AddSubscribers() with another unique subscriber, verify there are four subscriptions

Subscribe - call AddSubscribers() once, call Subscribe() with three different URLs, verify there are only three subscriptions