updated user tests to use api's for dependent entities and using factory

- Removed redundant string lists
- updated all tests to use UI factory
- Some re-factoring of tests
I'm having a hard time reading this. Also, `assertEqual` is better than `assertTrue` in this context. Can this be re-written? How about something like this?

```python
self.assertEqual(
    self.user.wait_until_element(
        locators['users.lastname']
    ).get_attribute('value'),
    last_name
)
```