Fix the fencing type and move it to model

fixes BZ #1143047
Fencing: controller override refactor

Use concern to add functionality to HostsController in Foreman instead
of subclassing it in Staypuft and modifying the url in the hosts#edit
form.
Adds mock Fencing model to Host

- pre-populates fencing fields on hosts#edit
- user can disable fencing

partially fixes BZ #1144649
Fencing: refactor controller concern to use mock model

Refactor the fencing controller concern to use the mock Fencing model
on Host. With this approach, the request params no longer need to be
mofified manually, and allows the usage of validations on the mock
model. The patch also adds a validation of the presence of the
fencing_type value.

partially fixes BZ #1144649
Disable Fencing form if the Host has no BMC interface

partially fixes BZ #1144649
Merge pull request #313 from ifarkas/fencing_fixes

Fencing UI fixes and improvements