Fix py3 bug when inserting data: URIs

The current code inserts bytes into a string. In Python 3 those are different types, causing the URI to look like:

    url("data:image/png;charset=utf-8;base64,b'iVBORw0KGgoAAAANSUhEUgAAAA...'")

Because Base64 data is always ASCII it is safe to decode it as such, and insert the resulting string, which causes the correct output:

    url("data:image/png;charset=utf-8;base64,iVBORw0KGgoAAAANSUhEUgAAAA...")