Add FormatIterable() method to print sequences of unicode items

The resulting string doesn't have the 'u' prefix for unicode items
contained in the item.

ETK-770
Merge remote-tracking branch 'origin/master' into fb-ETK-770-kraken20-unicode-1

* origin/master:
  Deleting dependencies.ini since we no longer using it on .jobs_done.yaml. @review_id: 42373
  Added support for https protocol in CopyFile download
  Added timeout
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  Fix tests after pytest-2.6.4 upgrade.
  Removing dependencies.init file from ben10.
  Fix tests after pytest-2.6.4 upgrade.
  Using shallow_clone and reference repos
  BEN-56: Support '# coding=' heading on tf fix-encoding.
  BEN-52: Use '# coding: UTF-8' on tf fix-encoding.
  BEN-10: [clikit] Sub-command --help should print the entire __doc__ message.
  Minor fix on 'tf fix-stringio'.
  Fixed a bug with embed_data + pytest.mark.parametrize
  Made 'cog' a dependency only during install
  Using cog to generate Reraise exceptions.
Fix unicode errors when decoding exceptions in Reraise

ROCKY-1215
unicode(exception) really doesn't like non-latin-1 characters

ROCKY-1215
PrintDetailedTraceback() should write bytes to the stream

This is because one of the flows calls traceback.print_exception(), which
will write bytes regardless. As such, let's always write bytes with the
given encoding.

ROCKY-1215
Pydev settings for encoded files

ROCKY-1215
Update _ExceptionWithDetailedTraceback to use BytesIO

See related change in PrintDetailedTraceback

ROCKY-1215
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  Added option in ExecuteNoWait to run command in new window
  Applying changes requested by @campos and @ama.
  Adding a helper to convert a given string to unicode avoiding errors.

Conflicts:
	.settings/org.eclipse.core.resources.prefs
	source/python/ben10/foundation/_tests/pytest_string.py
	source/python/ben10/foundation/string.py
Handle applications installed on paths with non-ascii characters.

PWDA-1401
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  No longer ignoring --no-cache option in ben10 build
  BEN-58: Flaky testExecuteAndEnviron.
  Improved docs. @review_id:42485
  Removed shallow_clone from job
  Changed FTP defaults based on platform
  Back to using Active FTP by default. EDEN-802
  BEN-59: Allow optional *args as command argument in clikit
  Allowing git commands to use errors=replace instead of failing.
Don't mix str-s with unicode literals in os.path.join.

PWDA-1401
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  BEN-60: Change 'indent' parameter from clikit.console.Print to use ben10 Indent
Decode str-s in traceback.

PWDA-1401
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  Code review: separated test groups. ETK-687
  Added an unicode exception handler

Conflicts:
	.settings/org.eclipse.core.resources.prefs
	source/python/ben10/foundation/reraise.py
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master:
  Created unicode-safe wrapper for os.path.expanduser
Also decode value of local variables when printing detail traceback.

PWDA-1401
Merge remote-tracking branch 'origin/master' into fb-PWDA-1401-UnicodeDecodeError-GetApplicationDir

Conflicts:
	.settings/org.eclipse.core.resources.prefs
Merge remote-tracking branch 'origin/master' into fb-ROCKY-627-unicode-support-1

* origin/master: (21 commits)
  documentation of MessageAttributeIsBytesException was poorly written
  Added 2 lines between classes
  Added test for MessageAttributeIsBytesException but it is on @xfail because of the current implementation of ExceptionToUnicode()
  Added assert on the type obtained from traceback._some_str()
  Using traceback._some_str()
  Changed the way the asserts on the 'filename' of each traceback entry is done to ensure they are compared in the correct order. An explanation was added too to explain why we have to check when "traceback_entry.path" is a string.
  Checking for the locale encoding instead of the platform for the expected results on pytest_reraise.py
  Forgot to remove a character in the last commit
  The tests with the bytes type on the exception message should be different on linux and on windows
  Added comment explaining inner behaviour of GetExpectedTracebackMessage()
  Added Header to ExceptionTestConfiguration
  Added IOError test with plain string
  Added test for IOError since for some reason it is somewhat "special".
  Using a "real" SyntaxError exception instead of raising it by hand in order to be more "realistic"
  The "reraised" special exception classes should not have its "args" touched
  - Checking the exception message also against the "traceback" so we get more "accurate" results.
  Inlined 'frame' and added comment to avoid using try/except mechanism inside Reraise()
  Using ExceptionToUnicode() in testReraiseKeepsTraceback
  Added comment to explain why obtaining the frame should be the first thing done in the method
  Added test case with cyrillic characters which break Reraise()
  ...

Conflicts:
	source/python/ben10/foundation/_tests/pytest_reraise.py
	source/python/ben10/foundation/reraise.py
Review #1.

PWDA-1401