Move device.hpp up out of util/.
Make device factory usage more inline with layer factory.