Decode percent-encoded paths.

See MESOS-1164.

Review: https://reviews.apache.org/r/20929
Fixed gcc-4.8 compilation error for stout interval set.

We are hitting the "Unqualified lookup in templates" issue in stout
interval set: http://clang.llvm.org/compatibility.html#dep_lookup

And looks like this is a boost bug:

1) boost/icl/concept/interval.hpp:621
  -- defines a template that uses 'lower_less_equal'

2) boost/icl/concept/interval.hpp:877
  -- 'lower_less_equal' is defined here

Since lower_less_equal does not contain any class type, the compiler may
or may not choose to reject the program according to the C++ standard :(
Clearly, gcc-4.8 rejects the program and gcc-4.4 does not.

I am using a workaround here to bypass the problem.

Review: https://reviews.apache.org/r/20935
Temporarily disabled ExternalContainerizerTest.Launch due to
MESOS-1257.
Add 'value' and 'units' methods to Duration subclasses.

Review: https://reviews.apache.org/r/20922
Used Duration subclasses to allow Timer users to specify units.

Review: https://reviews.apache.org/r/20923
Added template parameter to Timer.

Review: https://reviews.apache.org/r/20925