add support for setting user pointer for client apps