Fixes #7408 - added lazy loading of credentials

- credentials container abstract
- support API documentation (JSON) accessible without authentication
- RestClient connection initialized only when needed
- option to to use unauthenticated connection for method calls