JUser Changes

This is a revamp for Joomla 4.x

- [ ] Remove JObject Dependancy
- [ ] Use Exception Handling
- [ ] Make it easier to create a User from CLI
- [ ] Fix some long running bugs
- [ ] Avoid having properties ```params``` and ```_params```
- [ ] Full unit test coverage

**Bugs planned to fix**
- [ ] Discrepancy between JFactory::getUser documentation and actual results (see #811)