Fix coding style

Use `goog.isDef(x) ? x : {}` instead of `x || {}`
Upgrade to jsdoc 3.3.
Merge pull request #1964 from pagameba/node-jsdoc

Upgrade to jsdoc 3.3.
Merge pull request #1966 from fredj/coding-style

Fix coding style
Use externs/olx.js instead of objectliterals.jsdoc

The single externs/olx.js file describes all of the "options" objects we accept in our constructors.  The @typedef annotations are used by the compiler for type checking.  The @type annotations include documentation for individual options and serve as externs when compiling a profile of the library.  When compiling an application together with the library, the externs/olx.js file is included as one of the sources to provide the @typedef's without generating externs.

If we want to maintain multiple src/*.externs.js files instead of one large externs/olx.js file, we can.  But while we are still using Plovr, it makes for easier build configurations to have one file.

This removes the build tasks that generated the build/src/external/src/externs/types.js and build/src/internal/src/types.js files as those are both replaced by the single externs/olx.js file.
Unused externs and typedef generating code
Parse olx.js and convert types into typedef properties