Redesigne GBPreference as non-signleton instance