Better usage of crowbar machines API

As we already can add an optional path to the show action of the
machines command i have replaced the JSON parsing stuff with this simple
call.
Install rubygems and rubygem-json

To make the update process simple i am installing rubygems and
rubygem-json manually for ruby 1.8 to be able to execute all the ruby -e
calls that require rubygems and json.
Merge pull request #149 from SUSE-Cloud/feature/better-api-usage

Rails 4 update requirements
qa_crowbarsetup.sh: Remove leftovers from Cloud 2.x

Those code paths are unused since Cloud 3.x.
mkcloud: Allow explicitly choosing swift via want_swift=1
qa_crowbarsetup: allow cloudsource=M2

for SUSE Cloud 5 Milestone 2
trackupstream: ignore python-heat-cfntools for icehouse
trackupstream: ignore tempest for icehouse
qa_crowbarsetup.sh: Skip trove install on Cloud 4

Its entirely broken on GM4 and makes unrelated jenkins
tests fail that way.
qa_crowbarsetup.sh: ignore sp3 test updates for the next 5 days
qa_crowbarsetup.sh: also disable the test update channel
qa_crowbarsetup.sh: one more case to disable channels
qa_crowbarsetup: make use of new crowbar role API
Add test for multi DNS, bnc#901497
mkcloud: update cloudsource information
qa_crowbarsetup: only enable multidns test for new Cloud
IPMI range is taken from network proposal.
Changed the ipmitool command.
qa_crowbarsetup: use math for BMC IP calc
qa_crowbarsetup: drop old IPMI passwords

add option to give other PWs with extraipmipw env variable
trackupstream: build Master for SLE12