Adds global unsubscribe for preferences

- Refactors PreferenceBuilder
- updates spec runner
- adds GlobalUnsubscribes field to preferences builder