Support XenServer in the gate

This change is required to support XenServer. Adds localrc generation.

Change-Id: I11aa8398f9aff1b1b3bb0d0ff3eaa2f553ef246b
usability improvements to test-functions.sh

instead of dying at the first error found, run all the tests
and show all the errors. This makes it simpler to debug as you
can address more than one issue at once.

add the use of the bash 'caller' function to automatically print
out the name of the function and line number on both successful
and failing asserts. This ensures it's easy to get to the issue
at hand.

Change-Id: If15f50c6c41aa3940682d41c776589407a42bf4f
Set *_DEVSTACK_BRANCH in grenade's localrc

In If9417e65c7c54d017c4c847a4020f855684c423c we are using
BASE_DEVSTACK_BRANCH to specify the upgrade_level.compute value for
nova. So we need devstack-gate to overwrite the default value with the
branch d-g is preparing. This patch will allow
If9417e65c7c54d017c4c847a4020f855684c423c to work on stable/havana and
stable/icehouse, so we can land that patch and then change grenade to
icehouse in a self-gating manor.

Set TARGET_DEVSTACK_BRANCH for symmetries sake.

Change-Id: I22093166e7f100958baeabf7549de5c82ce518b2
Merge "Support XenServer in the gate"
Merge "Set *_DEVSTACK_BRANCH in grenade's localrc"
Merge "usability improvements to test-functions.sh"