Projection refactoring

In this PR:

 * General projection functions are now functions in a `ol.projection` module, rather than being static methods on the `ol.Projection` class.
 * New classes for EPSG:3857 and EPSG:4326 projections (needed later for scale line control), in separate classes.
 * Common projections are added with a call to `ol.projection.addCommonProjections()` (called automatically by default in `src/ol/map.js`).
 * All Proj4js-related classes and methods are private.
 * Axis orientation is handled for WMS sources.
 * An example of a map using EPSG:4326.