Warn the user if is using an old app version.

[Closes #4636]
Move a provider problem to a separate signal.

- Some code cleanup
- Fix typos
Refactor provider utilities.
Warn the user on incompatible api error.

- Add a proper signal for the incompatible api error.
- Warn the user of an incompatible api.
Add changelog for #4636.
Replace version check with a better one.
Use short version since we don't care of suffix.

This way we support client '0.5.0-rc3' if the provider supports '0.5.0'.
Add flag to disable version check.