Change tabOrder to preferences. We'll generalize and pass a settings object instead of just the tab order.