libvirt: add serial ports config

This is the first patch for exposing serial ports on openstack
instances. It contains setting up the instance XML config that creates a
TCP chardevice in libvirt.

Author: Ian Wells
Co-autherd by: Vladan Popovic, Sushma Korati

partialy implements blueprint serial-ports

Change-Id: Ia77909dffe6b48be7e6642cbe8bbab27fb6a627d
Image caching: update image caching to use objects

Commit 1023e703bd41c2a42b1159af0d9e907e94440b34 added support
for objects. This patch ensures that the parsing of the instances
is correct.

The patch does the following:
1. In the method _list_running_instances it treats all instances
   as an object
2. Fixes the bug mentioned below. The code was making a string from
   None. This would lead to invalid image details.
3. Ensures that the unit tests actually pass instance objects instead
   of an instance dict
4. In relevant tests updates assertEquals to have the expected parameter
   first

Closes-bug: #1354664

Change-Id: Ib028baab4d4c823f22c371a83f7a813c24d77570
Image cache tests: ensure that assertEquals has expected param first

Update the tests to ensure that the expected parameter is first.

TrivialFix

Change-Id: I5a860d7a217f69bc1d5e7e0e470e724e62a69372
Merge "libvirt: add serial ports config"
Merge "Image caching: update image caching to use objects"
Merge "Image cache tests: ensure that assertEquals has expected param first"