fix race at CreateSubscription
Update tests
Revert OPML processing, use recursion since it's more readable