fixes #2051 good host percentange was wrong
fixes #1353 added custom hook when host build mode changes

see http://theforeman.org/projects/foreman/wiki/Custom_Hooks_in_Plugin
fixes #2045 changed condition so there is no error in Postgresql
fixes #2042 - fix CSS classes added to filter levels
Fixes #2046: Only show the inverse taxonomy tab if enabled
fixes #1978 - changing login maximum size to 100

In case of using a long login name (such as ovirt_username@domain), on
the fly login will fail. Increasing the maximum login size to 100.
fixes #1965 override value to textarea
fixes #1964 lookup_keys.default_value can hold > 255 characters
fixes # 2056 - add bmc support to the api-proxy class
minor cleanups to the proxy resource class refs #2056
Fixes #2050 - Don't display revoked certs by default
Fix Foreman SQL injection through search mechanism CVE-2012-5648
fixes #2023 - Don't try to save os=nil in the fact importer

I've tried to address all possible places where empty set of facts (e.g. we
dont have the facts just yet as its a brand new install) could lead to the
operating system value disappering.

i believe the issue happened because of a boolean == string compareing (e.g.
some left overs in cache might lead to if "false" which is true.

I've also ensured that we get an exception if the operating system value is empty
or if it does not pass validations.
refs #2023 - always write using_storeconfigs default as a boolean
Fixes #2059: Completely remove email_replay_address from settings
- Allows mysql2 usage with Puppet < 2.7.10 - Fixes #1350
fixes #2018 add forward slash to controller name of url_for() helper
added slash /unattended to other url_for calls
fixes #1834 to get foreman running under ruby 1.9.3
puppet class form ui fixes.