item: set userptr in item (fixing wrong pointer)

userptr was set in base class, causing pointing it to the wrong location,
causing bugs in all functions using the userptr (get_identifier)