various CF/ObjC fixes