Add Mingw support (tune libraries and disable cpuid with #ifdef)
Use differential encoding for name offsets

Each name is represented as an integer range in a vector of chars.
Instead of storing the absolute offset inside this array, we can store
only the offset to the previous entry (the string size). By doing this we reduce
the number of bytes need to store an offset from 4 to 1 bytes (if we
set a maximum string length of 255).
This is however slower, since the absolute offset must be computed on
each querry by summing up all previous lengths. To limit the
performance inpact we only do this for blocks of a certain size (16).
Integrate RangeTable into server
Initial support for SharedDataFacade

SharedDataLayout was refactored to include canary values at the
boundaries of each memory block. This makes it easy to detect overruns
and block-size mismatches between osrm-datastore and the
SharedDataFacade.
Constify some parts of RangeTable
Fix off-by-one since back() gives last value inside [begin,end)
Fix edge cases in RangeTable
Removed SSE code in RangeTable to rely on compiler optimazation
Add array inlcude
Allow user to force thread number

This allows the user to do (potentially) stupid things, but warns him.
The default is TBBs default, so probably the right thing.
To enforce thread numbers in extractor it must be passed to the child
threads.
Fix some minor style issues
Fix VC2013 issues
Another VC2013 fix
Merge branch 'TheMarex-diffencoding' into develop
Merge branch 'thread-control' of https://github.com/TheMarex/Project-OSRM into TheMarex-thread-control
Merge branch 'TheMarex-thread-control' into develop
Merge pull request #1076 from alex85k/patch-mingw

Add Mingw support (tune libraries and disable cpuid with #ifdef)
Change content-type header for JSON data