more consistent stringification
use object ids as client ids
WIP AND BROKEN