Split auto-detect driver into separate drivers; add Factory, Stub, an… …d HHVM drivers (and unit tests)