Implement internal state machine with no transaction required

https://bugzilla.redhat.com/show_bug.cgi?id=1089061
Fix situation when ci_to_datacenter meets nil.

https://bugzilla.redhat.com/show_bug.cgi?id=1132556
Uncaught Exception dispalys error screen in CFME UI

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

When the user enters an invalid,incomplete path in simulation
during parsing we get the Ruby URI::InvalidURIError. Caught this error
and converted it to MiqAeException::InvalidPathFormat
The Simuation UI code only catches this exception and throws up the
error window for others.
Force binary in an expectation since UTF-8 is the default in ruby 2.0.

When reading ruby file contents, ruby 2+ encodes any Strings as UTF-8.
We have to force the encoding since WimParser returns either Fixnums or ASCII-8BIT Strings.

See: https://www.ruby-lang.org/en/news/2013/02/24/ruby-2-0-0-p0-is-released/
Fixed typo in a comment.
Remove automation_base.xml and update all of the automation specs.
Merge pull request #465 from jrafanie/force_binary_string_in_wim_parser_expectation

Force binary string in wim parser expectation
Merge pull request #471 from martinpovolny/find_datacenter_nil

Fix situation when ci_to_datacenter meets nil.
Added ability to only reset the ManageIQ automate domain.

Changed automation specs to only load the ManageIQ domain.
Merge pull request #480 from Fryguy/eliminate_automation_base_xml

Remove automation_base.xml and update all of the automation specs.
tools/evm_dump allow extra models
evm_dump robocops
Merge pull request #116 from bzwei/state_machine

Replace the external state_machine with an internal implementation
Merge pull request #482 from kbrock/tools_evm_load

evm_dump allow extra models
Merge pull request #477 from mkanoor/bugzilla_1133747

Uncaught Exception displays error screen in UI