Fix mangling of `wp user list`

1. Only JSON encode fields that will be displayed on output. `WP_User`'s `data` attribute was getting JSON-encoded, which meant the magic getter no longer worked.
2. Using `isset()` for object properties, instead of `property_exists()`, means we can check if magic properties are available.