Exchange Array Does Not Convert Naming Convention Correctly

## Description

`DataObject::exchangeArray()` uses `ucfirst` to convert `lower_underscore` casing to `camelCased` setter method names. This only works for keys with a single word. (The setter for `user_id` becomes `setUser_id`.)