Storage pool support unicode correctly

For unicode, we have handle the incoming text from
kimchi server and outgoing text to kimchi server correctly.

But we do not handle the incoming text from libvirt and outgoing
text to libvirt correctly.

For some variables of storage pool, such as pool name and pool xml
do not follow our principle.
https://github.com/kimchi-project/kimchi/wiki/support-unicode

This patch will improve the follow:
1. Handle storage pool xml and pool name as unicode in kimchi, and
decode them when pass them to libvirt.
2. Decode the pool name from libvirt.

We should guarantee:
All text strings, everywhere should be of type unicode, not str.
If we're handling text, and our variable is a str, it's a bug!

Test this patch:
1. create a pool
$ curl -u <user> -H 'Accept: application/json' \
-H 'Content-type: application/json' \
http://localhost:8000/storagepools/ -X POST -d '
{
   "name":"kīмсhī-pool",
   "type":"dir",
   "path":"/tmp/test"
} '

2. get this pool
$ curl -u <user> -H 'Accept: application/json' \
-H 'Content-type: application/json' \
http://localhost:8000/storagepools/kīмсhī-pool

3. delete this pool
$ curl -u <user> -H 'Accept: application/json' \
-H 'Content-type: application/json' -X DELETE \
http://localhost:8000/storagepools/kīмсhī-pool

Signed-off-by: ShaoHe Feng <shaohef@linux.vnet.ibm.com>