Clarify --process_closure_primitive default

Also fix a couple typos.
Reapply b148362d285ebd62520308e264061ee86efad6d5 - was blocking on a compiler release.
Make the args to ES6 Promise resolve and reject optional.

This allows the following code to compile successfully:

var p = new Promise(
function(resolve, reject) {
if (someCondition) {
resolve();
} else {
reject();
}
});
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81791870
Simplify some critical path NodeTraversal logic
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81799760
Add HTMLPictureElement to the externs.

Based on https://github.com/google/closure-compiler/pull/734 from Chad Killingsworth.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81804012
[NEW TYPE INFERENCE] Allow Objects, like Functions, to be loose
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81808911
Check for duplicate whitelist entries.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81888925
Optimize smart name removal handling of aliases.  Reduces the runtime of the pass from >30s to less than 3s in the test case.  Primarily this is done by reducing the number of edges in the graph (aliases and parent references), but here I also reduce the reference propagation time, and use the graph node rather than the graph node payload in a couple of places to avoid hash lookups.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81916087
Avoid formatting error messages when using the "look ahead parser"
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81918993
[NEW TYPE INFERENCE] Handle goog.bind using the coding convention.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81988852
Make implicit narrowing compound assignments explicit.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81995202
Add $mdSidenav to Angular Material externs
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82107743
Merge pull request #735 from ChadKillingsworth/document-createelement-nosideeffects

Mark document.createElement as @nosideeffects (again)
Minor cleanups in AmbiguateProperties.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82242628
[NEW TYPE INFERENCE] Understand superClass_ property of ctors
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82270198
Treat "?T" the same as "T|null", even if T is a template type.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82274926
Merge pull request #530 from pauldraper/cli-options

Improve --process_closure_primitives documentation
Automated g4 rollback of changelist 82274926.

*** Reason for rollback ***

Broke a variety of projects.

*** Original change description ***

Treat "?T" the same as "T|null", even if T is a template type.

***
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82280995
Remove usage of raw HashSet
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82335628