fixes #1957 - remove old libvirt hypervisors code

Since foreman 1.0 libvirt hypervisors are now part of compute resources
this patch removes the old code and migrate any existing hypervisors to
be libvirt based compute resources.
Fixes #1823 - Use Compute Resources permissions for Virtual Machine tab
Show all Compute Resources if Compute Resource user filtering is not in use
Revert "Show all Compute Resources if Compute Resource user filtering is not in use"

This reverts commit 6bc745327d0e354c695eaef61162e54b9b198780.
fixes #1637 adds spice support

added vm name and cursor release instruction to the spice console title.
this is a follow up to commit:057d497
fixes #1962 incorrect value returned when on the fly ldap is disabled
fixed wrong old hypervisor migration refs #1957
fixes wrong method name, #refs 1957
This commit adds most of the functionality required for API v1

The overall goal was to extract the existing JSON response
overall controllers, and to move them to a seperate name space.

* documentation was added to all requests (available under /apidoc)
this include same request and response generated using
    APIPIE_RECORD=examples rake test:api
* Also Fixes #1800, fixes #1419, fixes #981 and fixes #1774

whats missing:

1. Permissions checks for all new controllers
2. Nested routes (e.g. /hosts/id/reports)
3. running tests with oauth/basic_auth (instead of as_admin {get /})
adds foreman versions to response headers
do not report internal state over api
Added header to foremancli calls to call API version 1
fixes #1961 Adding JSONP support

When using cross-domain requests, it is impossible to read the response
data, and process it.
Using JSONP allows a client, from a specific domain (for example
/domain1), to query data in another doamin (/domain2), and analyze it,
using a callback.

Such a request would be followed by "callback=" parameter. For example:
http://foreman-server:3000/statistics?format=json&callback=analyzeStats

And the response would be:
analyzeStats({"statistics":{"mem_totfree":0.0,"arch_count":{},
"env_count":{},"cpu_count":{},"mem_size":0,"swap_size":0,
"model_count":{},"mem_free":0,"swap_free":0,"klass_count":{},
"os_count":{},"mem_totsize":0.0}})

which will call the analyzeStats callback.
Whereas a regular request,
http://foreman-server:3000/statistics?format=json, will just contain the
JSON data.

More reading on JSONP:
JSONP - http://en.wikipedia.org/wiki/JSONP
JSONP Ruby impl -
www.simb.net/2012/02/06/ruby-and-jsonp
https://github.com/crohr/rack-jsonp/
Fixes #1968 - Fix require paths for tests with new config/settings.rb
smart proxies api - filtering by proxy type
subnets api - removed required constraints from fields in update

The required constraints were blocking partial updates.
set apiadmin user in headers before api controller tests
Fixed 1972: Supporting search hosts by uuid

This patch adds support for searching hosts by uuid.
It is useful when you have the uuid of a virtual machine, and want to
get the Foreman host properties.
fixes #1915 - initialise Puppet in master context

Explicitly specify the run_mode as being 'master' to ensure the config is
parsed in a puppetmaster context.
Fixes #983 - implement 3 state boot