Split xeniface specific parts out of CXenAgent into CXenIfaceCreator
In preparation for supporting more than one device interface, the
one-to-one correspondence between the IDeviceCreator interface and the
CXenAgent object needs to be broken.
This patch separates all code that interacts with the CXenIfaceDevice
object (as well as the CDevice and CDeviceList instances for the xeniface
interface) into a new CXenIfaceCreator object.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>