Handle exception better in v2.1 attach_interface

Add more information when exception occurs in attach interface at Nova
v2.1 API layer.
The commit I7402cfc28d4ee7989c7eb054556df57918bbaeee has been merged
for v2.0 API, this patch does the same change for v2.1 API.

Partially implements blueprint v2-on-v3-api

Change-Id: I1b175501e6db48f27a894db2e66e09d31f8b50e2
Compute: catch more specific exception for _get_instance_nw_info

There are cases when the method _heal_instance_info_cache tries to
update the network cache. The problem here is that the instance no
longer exists. The exception handling was very broad. This adds
treatment for the specific exception.

Change-Id: I04372cec81fde6ef06e9d7f2b59c1e47e15c0905
Closes-bug: #1385246
libvirt: safe_decode domain.XMLDesc(0) for i18n logging

domain.XMLDesc(0) can return a utf-8 encoded string which will cause a
UnicodeDecodeError when substituting the variable in the _LE unicode
translated Message object in oslo.i18n.

This change simply decodes domain.XMLDesc(0) before passing it onto the
logging method when used with a translated message.

Closes-Bug: #1388386

Change-Id: Id56d6564cfb15cc479e664020ae6f1c82acacb09
Merge "libvirt: safe_decode domain.XMLDesc(0) for i18n logging"
Merge "Compute: catch more specific exception for _get_instance_nw_info"
Merge "Handle exception better in v2.1 attach_interface"