This series introduces an infrastructure to remove anonymous devices from qdev. Anonymous devices are one of the big gaps between qdev and QOM so removing is a prerequisite to incrementally merging QOM.
Besides the infrastructure, I also converted almost all of the possible PC devices to have unique names. Please not that naming is not a property of devices but rather of the thing that creates the devices (usually machines). The names are ugly but this is because of the alternating device/bus hierarchy in qdev. For now, the names use '::' as deliminators but I think Jan has convinced me that down the road, we should use '/' as a deliminator such that the resulting names are actually valid paths (using a canonical path format).