Added new exceptions to be used with Git Automate

This work is related to the GIT Issue.
https://github.com/ManageIQ/manageiq/issues/1199

Issue #1199
Use Domain instead of Namespace in specs

Issue #1199

When we move to GIT a domain woud be a separate repository and will
be distinct from Namespaces. In the Postgres the Domain and Namespace
are stored in the same table.
The specs were changed to count namespaces separately from domains.
Merge pull request #1216 from mkanoor/namespace_to_domain

Use Domain instead of Namespace in specs
Merge pull request #1204 from mkanoor/git_exceptions

Added new exceptions to be used with Git Automate
Move variable initialization for clarity.
Merge pull request #1217 from martinpovolny/workers_tab_followup

Move variable initialization for clarity.
Rename method .validate to .validate_settings for FileDepotSmb and FileDepotFtp.

To avoid overriding rails .validate method.
https://bugzilla.redhat.com/show_bug.cgi?id=1173213
Delete FileDepot.verify_depot_hash and FileDepot#verify_credentials.

Instead of calling FileDepot.verify_depot_hash, the caller should call .validate_settings based on the depot's class.
Instead of calling FileDepot#verify_credentials, the caller should call . verify_credentials based on the depot's class.
https://bugzilla.redhat.com/show_bug.cgi?id=1173213
Fix the log message about depot settings.

Which is used by both log depot and DB backup.
https://bugzilla.redhat.com/show_bug.cgi?id=1173213
Fix MiqSchedule.verify_depot_hash to call FileDepot's subclass method directly

to validate the depot settings based on the depot's type.
https://bugzilla.redhat.com/show_bug.cgi?id=1173213
Add a flash message when MiqSchedule.verify_depot_hash fails.

https://bugzilla.redhat.com/show_bug.cgi?id=1173213
Fix the spec for MiqSchedule.verify_depot_hash.

https://bugzilla.redhat.com/show_bug.cgi?id=1173213