Added CRUD support for Automate Domains.

- Added support to Add/Edit/Delete Automate Domains. Moved some of the methods to private area and changed existing code that was being used to add/edit namespaces to be used for add/edit of domains.
- Added support to change priority of Automate Domains.
- Added support to allow users to local/unlock domains. This feature is protected by RBAC, so only users that have access to these features will be able to see these buttons.
- Added product features for the new buttons.
- Changed role_allows? method in user model to check for allows_any? feature when a hidden feature comes in.
- Added spec tests to verify, lock/unlock and priority order change features.
- Fixed any broken spec tests in application_helper specs, deleted any AE related spec tests that aren't valid any more.
- Fixed an issue where correct tabs were not shown as inactive tabs on edit screen.

Issue #2045
Fixed rubocop warnings.

Issue #2045
Cleanup of code from PR reviews.

- Some cleanup in the code where action_url is being set, moved that into its own method.
- More cleanup in the area where attributes are being set for MiqAeField. Changed name of the form field for substitute column so looping over form fields in controller to set MiqAeField attributes gets easier.
- Updated spec test to use miq_ae_domain_enabled and miq_ae_domain_disabled factories.
- Fixed an issue found with Domain delete during testing.

Issue #2045
Added Lock/Unlock parent feature.

- Added Lock/Unlock as a parent feature and made Lock and Unlock features as hidden features under new feature so only a single feature shows up in the Access Control to toggle between Lock/Unlock.

Issue #2045
Merge pull request #26 from h-kataria/ae_domains_crud_ui

Added CRUD support for Automate Domains.