API refactor, adding UsbSerialPort interface.

- UsbSerialDriver is now a discrete interface.
- UsbSerialDriver provides getPorts() method, returning one or
  more usable UsbSerialPort.
- Use of UsbDeviceConnection is deferred until open(),
  making it possible to probe for ports without
  permission from Android.

(Thanks to Felix for inspiring some of these changes).
Rename Cp2102SerialDriver to Cp21xxSerialDriver and add Usb IDs for more Silabs devices

Conflicts:
	UsbSerialLibrary/src/com/hoho/android/usbserial/driver/Cp21xxSerialDriver.java
	UsbSerialLibrary/src/com/hoho/android/usbserial/driver/UsbId.java
	UsbSerialLibrary/src/com/hoho/android/usbserial/driver/UsbSerialProber.java