Refactoring ClientData

Cleaned up the ClientData class so that it looks reasonably nice.
No external changes made.

`getItems` was modified