Only allow at most 1 vehicle interface to be active via the Enabler.

This is a rather large change with these primary goals:

    * Instead of checkboxes, use a ListPreference so at most one VI type
         can be selected at once in the Enabler.
    * Only enable the data source preferences for each VI if that VI is
        selected.
    * Don't enable the USB source by default in the VehicleService
Merge pull request #165 from openxc/limit-1-vi

Only allow at most 1 vehicle interface to be active via the Enabler.