Fix handling of characters in XML generation

There are some codes where characters are represented by lists
those are generated from user-input binary (e.g. key names)
by binary_to_list/1.
It works for ASCII (or Latin-1) but not for unicode in general.

Handling of characters (binaries or lists of integers) of this fix are as follows:

- For binaries, we assume that they are encoded by UTF-8.
- For lists, we assume they are converted from UTF-8 encoded binaries
  by applying binary_to_list/1.
  This is tricky point but binary_to_list/1 treats binaries as if it is
  Latin-1 encoded, so we should turn them back by list_to_binary first.
  Then we can apply unicode:characters_to_binary safely.
Change riak_cs_xml:export_xml to unicode-aware riak_cs_xml:to_xml
Fix bug of accept content type
Add test case of listing users which has non-ASCII UTF-8 characters

This is the case of #628.
Fix has already been made by the commit b244470f782a9f70529978c1a23845b272376d2b
Add test case of access stats with xml format