[py3] Ported django.utils.encoding.

* Renamed smart_unicode to smart_text (but kept the old name under
  Python 2 for backwards compatibility).
* Renamed smart_str to smart_bytes.
* Re-introduced smart_str as an alias for smart_text under Python 3
  and smart_bytes under Python 2 (which is backwards compatible).
  Thus smart_str always returns a str objects.
* Used the new smart_str in a few places where both Python 2 and 3
  want a str.
Created repository
Imported tests
Added a select widget that uses PT regions as its choices (ISO 3166-2:PT).
Merge pull request #2 from bmcustodio/pt-regions

Added a select widget that uses PT regions (ISO 3166-2:PT)
Moved tests inside django_localflavor_pt app dir
Add translations (pt/pt_BR/es)
Let's enforce a common style...
Let's integrate with Travis CI...
Updated 'README.rst' and added 'Travis CI' badge.
Updated minimum required Django version to 1.4.2.
Updated package name in 'README.rst' to match the one in 'setup.py'.
Updated zip code validation regex.
Updated phone number validation regex.
Added module docstrings to each module.
Added some more tests to the current test suite.
Added 'PTSocialSecurityNumberField'.
Major documentation updates.
Added 'PTCitizenCardNumberField'.
Updated 'README.rst' to reflect docstrings.
Made Python3 compatible.
Replacing 'pep8' with 'flake8'.
Bumping 'flake8' to 1.6.2.
Bumping 'flake8' to 1.7.
Bumping 'coverage' to 3.6.