Fix state sync logic related to the PAUSED VM state

A VM may get into the paused state not only because the user request
via API calls, but also due to (temporary) external instrumentations.
Before the virt layer can reliably report the reason, we simply ignore
the state discrepancy. In many cases, the VM state will go back to
running after the external instrumentation is done.

Fix bug 1097806.

Change-Id: I8edef45d60fa79d6ddebf7d0438042a7b3986b55
(cherry picked from commit f7fbdeb5672bae7d3bffd6fa76de1ce81fc132bf)
Add a safe_minidom_parse_string function.

Adds a new utils.safe_minidom_parse_string function and
updates external API facing Nova modules to use it.
This ensures we have safe defaults on our incoming API XML parsing.

Internally safe_minidom_parse_string uses a ProtectedExpatParser
class to disable DTDs and entities from being parsed when using
minidom.

Fixes LP Bug #1100282 for Folsom.

Change-Id: I6a4051b5e66f3ce5a330b2589c42e6e9e5b9268e
Enable libvirt to work with NoopFirewallDriver

Fixes bug 1050433

Change-Id: I49613c7d1e6b14411dcdc342366e163a21673f78
Merge "Add a safe_minidom_parse_string function." into stable/folsom
Merge "Enable libvirt to work with NoopFirewallDriver" into stable/folsom
Merge "Fix state sync logic related to the PAUSED VM state" into stable/folsom
libvirt: Fix nova-compute start when missing ip.

If nova-compute is restarted when an instance has no ip address
the libvirt/vif:_get_configuration method will throw an index
error. Check for existance of an ip before attempting to retrieve
one. Includes failing test.

Fixes bug 1131330

Change-Id: Id383544b44e64205fc3b4f850d0d11ad2ebd5da7
Merge pull request #20 from jk0/lvm

LVM Snapshot backport
Merge remote-tracking branch 'openstack/stable/folsom'
Add missing function get_instance_path().

Taken from 76461c83d1807981a11f8570ba815ecb4979480e.