add range-based for_each_pair
Refactor routing plugins:

- remove superflous members from RawRouteData, partially implements #1238
- DescriptorTable moved to BaseDescriptor.h
- added templated assignment c'tor to DescriptorConfig
- refactored check for valid input coordinates, moved to BasePlugin.h
- replaced shared_ptr's to descriptors in ViaRoutePlugin.h with unique_ptr
- implemented FindIncrementalPhantomNode in facades for a single, i.e. first result
- untangled a few includes
remove superflous include from library
add benchmark for a single coordinate incremental lookup
disable debug code in rtree
untangle includes
Move Rectangle2DInt to own header
Add global timer utils

Global timers can be used to accumulate timings of the same context
in a thread-safe way.
Use iterators for DouglasPeucker
Allow empty ranges in DP
Make atan2_lookup inline since it is header-declared
Add wrapper function to DouglasPlucker for backwards-compability
Use numeric_limits
Fix include order in staticrtree
Reorder include and use correct datatypes
Merge pull request #1217 from TheMarex/sketch-upstream

Bring general sketch commits upstream
Revert "Bring general sketch commits upstream"
Merge pull request #1240 from Project-OSRM/revert-1217-sketch-upstream

Revert "Bring general sketch commits upstream"
make entire_length variable a private member that cannot be set from the outside and only accessed thru a const getter.
reformat to fix OCLint long line warning