[Python] Fixing issues 5508 and 5512. Making sure profile dir path of type str un...

Fixing issues 5508 and 5512. Making sure profile dir path of type str under both Py2 and Py3. Changing the way BytesIO imported so that str unicode swap actually happens under Py2.

Changes made:

I don't see any necessity to turn all the string literals in the file firefox_profile.py into unicode literals by importing `unicode_literals`, removing which makes sure that the profile dir path of type `str` under both Py2 and Py3. This fixes the issues 5508 and 5512 happening under Py2. A test has already been there to cover this scenario.

`io` module introduced in Python2.6 itself. Hence, changing the the way `BytesIO` imported so that the `str` and `unicode` swap would actually happen under Py2. This fixes the issue when try setting unicode profile preference under Py2.

Added 2 more firefox profile tests to make sure int and bool preferences are set properly.

EDIT: Updated the unicode preference setting test to make it functional under Py2.