Admin UI Improvements (Part 1)

Part 1 of the Admin UI trilogy:

- Allow for the tenant hostname to be updated on the fly
- Fixed tenant caching problems in TenantsAPI
- Refactoring of Tenants API to get rid of some of the overlapping functions
- Increased test coverage for Tenants API
- Added no spaces validator on tenant alias
- No longer allow for two tenants to have the same hostname
- Remove the /api/tenants endpoint from the user tenants

A corresponding UI PR will be sent as well