take the USB initialization out of the constructor, to allow a wait before enumerating