Add basic tests for dx-build-app/let.
dx-build-app/let abides by exit code conventions.
Make dxclient tests not echo entire output of shell commands.
Don't barf on malformed execDepends.
Rename AppletBuilderException => AppBuilderException
PTFM-5908 Skip an appletDescribe call that was not really needed.

The appletDescribe call was problematic because it was the only data
object method that needed a project and didn't have one explicitly set
by us.
PTFM-6077-sidenote: adding delimiter between size string and "sponsored by DNAnexus" string
Removing dxLog (c++) from dx-toolkit
Omit unneeded deletion of pyrsa* files.
Don't install easy_install executables.
Taking advantage of new /app-xxxx/describe spec for potential tab-completion speedup
Some performance improvements to tab completion; note that data object tab completion dominates dx run <TAB>
Add a newline at end of progress display for file uploads.
Show progress while dx-build-applet --remote is archiving the target.

Hopefully this will help the user to understand when their tarball is
huge (e.g. the target directory already has a whole bunch of binaries
in it) and interrupt before uploading begins.
Allow clearing vars by providing VARNAME=None to overrideEnvironment.
More idiomatic context-managed assertSubprocessFailure assertion.
Regression tests for dx-build-app/let.

Includes regression tests for: PTFM-4470 PTFM-5105 PTFM-5138 PTFM-5911
PTFM-2681: Initial implementation of R API wrappers
Don't print stacktrace when unable to build the requested versions.
PTFM-6086 Fail gracefully when configure/make step fails.