Build: Don't assume the browser environment; smoke test on Node w/ jsdom

Refs gh-1788
jsdom supports `setTimeout` etc.; they wrap Node's `setTimeout` but also cache results in order to auto-clear timeouts/intervals on `window.close()`. This seems to be an extremely edge-case scenario and I envision we might want to support simpler than jsdom replacements for `window` so it's better to use global `setTimeout`.

Thoughts?