updated archiver to handle unicode characters in a package name or class name

Testing Done:
besides running the /build-support/bin/ci, I re-ran our build that has i18n chars in class files.

devpants goal bundle service/exemplar  --bundle-deployjar

Bugs closed: 111

Reviewed at https://rbcommons.com/s/twitter/r/319/
A couple of tweaks to reporting output.

1. Handle ansi escape sequences better. Previously we would render

  \033[36m bar \033[1m baz \033[0m

   as

   <span class="ansi-36"> bar </span><span class="ansi-1"> baz </span>

   Now we correctly nest it as

   <span class="ansi-36"> bar <span class="ansi-1"> baz </span></span>

   This is important because, e.g., \033[1m means "bold text", so we
   need to keep whatever color we had.

2. Make sure unindented console output starts on a new line
Make BundleCreate work when the jvm_app has no sources.

Previously it would choke on the fact that jar_create wasn't
creating a jar for the jvm_app target in such cases.
WIP
Merge branch 'master' into pytests_in_goal

Conflicts:
	src/python/pants/reporting/assets/css/pants.css
	src/python/pants/reporting/html_reporter.py
	src/python/pants/reporting/plaintext_reporter.py