Fix check for missing goog.require directives

Take this example:
```
goog.require('ol.projection.addCommonProjections');

ol.projection.addCommonProjections();
```

Without this patch, the build_check_requires_timestamp target would report
that ``ol.projection`` is missing.
This is because ``ol.projection.addCommonProjections();`` would match both
``ol.projection.addCommonProjections and ``ol.projection`` provide
directives.
Add countries.json to examples data dir

The examples cannot use files located in the test dir, or they won't work when hosted as GitHub pages.
Make vector-layer example ignore XHR errors

This is a workaround for our check-example.js PhantomJS script to work with this example. Without this check-example.js fails because xhr.status is 0. I tried to give the explicit file:/// scheme as indicated in https://groups.google.com/d/msg/phantomjs/wFGme0pE-Tk/WUjU5s-27NwJ, but that didn't work for me.
Remove ol.source.SourceOptions typedef

The ol.source.SourceOptions type is already declared in objectliteral.exports, so it should not be declared in the ol/source/source.js file.
Source option "projection" is a ProjectionLike
Make the generated Export classes accept undefined

We have constructors, like ol.View2D and ol.control.Attribution, whose "options" argument is optional (opt_options). But currently, we cannot do "new ol.View2D()" in uncompiled code that uses an ol3 build compiled in advanced mode. This commit fixes that by changing the generated Export constructors.
Merge pull request #384 from elemoine/optional

Exports fixes
Merge pull request #381 from elemoine/countriesjson

The vector-layer example does not work when hosted
Add type VectorLayerOptions
Move expression.exports to proper place
Merge pull request #387 from elemoine/expressionexports

Move expression.exports to proper place
Merge pull request #385 from elemoine/385

Rule-based styling does not work in hosted style-rules example
Do not recenter map and zoom on repeated clicks on +/-

Multiple fast clicks get interpreted as DBLCLICK by the browser,
so it makes sense to stop propagation of DBLCLICK events when
they happen on elements on the overlay container. This is also
a good change because DBLCLICK might have a meaning on other map
overlays as well.
Merge pull request #370 from bbinet/fix-missing-requires

Fix check for missing goog.require directives
Add ol.dom.Input
Merge pull request #389 from fredj/dom-object

Add ol.dom.Input
Merge pull request #388 from ahocevar/dblclick

Do not recenter map and zoom on repeated clicks on +/-. r=@elemoine
Range from -π to π in rotation inputs (see #392)
Make social links more social
test: Deactivate mocha bail option

We don't want mocha to quit on the first failing test. It should continue
and see what other tests are failing.