Event listener harness
 * import and assign policies to send events to automate
 * import automate custom namespace to relay events
 * bottle api event listener that records events
 * test to validate events have made round-trip
Cleaned up test and environment
 * added bottle to requirements.txt
 * moved api listener setup-teardown to fixture setup_api_listener
 * improved docstring coverage
 * refactored automate
Lint pass
Fix ldap roles tests breakage

- Related to recent changes to the login page
Parametrized the management systems in infrastructure
Altered exisiting parametrized functions to draw provider types from existing type map
Event listener testing plugin

This plugin is used for capturing the events triggered by cfme.
It can be integrated very easily, just use the register_event fixture in any testing function.
To use this plugin, firewall must be open for desired port (consult the cli parameters).

By default, the event testing is off.
Split PXE fixture into multiple components

Split up setup_pxe_provision fixture into
* setup_pxe_server()
* setup_pxe_menu()
* setup_pxe_image()
* setup_pxe_customization_template()
Added Host Add page and test

Hosts page class
* Added _configuration_button_locator, _add_new_host_locator, _remove_host_locator to Hosts class
* Added @add_button property, @remove_button property to Hosts class
* Added click_add_new_host() method to Hosts class
* Added does_host_exist() method to Hosts class
* Added check_host_and_refresh() method to Hosts class
* Added click_remove_host() method to Hosts class

Add subpage
* Added new Add page for Hosts subpages

test_infrastructure_provider_pages.py
* Added new test test_host_add() to test_infrastructure_provider_pages.py
* Added new test test_host_delete() to test_infrastructure_provider_pages.py
* Added new single_host_data fixture to test_infrastructure_provider_pages.py

Page base class
* Added _wait_for_invisible_element to Page class

Template data
* Added template data
Added new IPMI backend for both host power control and verification

Added utils/ipmi.py
* is_power_on() method for determining chassis power
* power_on() method for turning on power
* power_off() method for turning off power
* power_reset() method for hard reset of power state, respects current power state and deals accordingly
Added host power controls and associated tests

Hosts class
* Added CommonPowerButton inheritance
* Added reset_host() method for reseting host
* Added power_on_host() method for powering on host
* Added power_off_host() method for powering off host

test_infrastructure_providers_pages
* Added test_host_power_controls_reset() test
* Added test_host_power_controls_on() test

Base class
* Added click() method to Flash message object
Merge pull request #232 from psav/remove_hardcoded_params

Parametrized the management systems in infrastructure
Merge pull request #229 from psav/ipmi_backend

Added new IPMI backend for both host power control and verification
Merge pull request #231 from psav/host_power_controls

Added host power controls and associated tests
Fixed several failures in infrastructure tests
#238 - Infrastructure discovery test interferes with subsequent tests
wait_for_provider_or_timeout needed to return to the original provider page for some tests
Merge pull request #228 from seandst/fix-ldap-auth-roles

Fix ldap auth roles
Merge pull request #163 from mfalesni/event_listener

Event listener
Fixed issues with simple ldap tests

Remove parametrization of roles
Added ldap mode cleanup test_auth_set_to_database()
Created validate_menu() method
Fixed renaming of Configuration -> Configure in root menu in yaml template
Made provider setup only validate when setup has actually recently occured
Merge pull request #239 from psav/fix_infra_tests

Fixed several failures in infrastructure tests
Merge pull request #240 from psav/fix_ldap_tests

Fixed issues with simple ldap tests