Make "depfile=$out.d" work if $out contains escaped characters, rspfile too.

Fixes #730.  This has always been broken, but due to #690 more paths are now
escaped (e.g. paths containing + characters, like file.c++).  Also see
discussion in #689.

The approach is to give EdgeEnv an enum deciding on whether or not to escape
file names, and provide functions that evaluate depfile and rspfile with that
set that to kNoEscape.  (depfile=$out.d doesn't make sense on edges with
multiple outputs.)

This should be relatively safe, as $in and $out can't be used on edges, only
on rules (#687).
reword manual for depfile/rspfile escaping change
Merge pull request #767 from nico/esc_deprspfile

Make "depfile=$out.d" work if $out contains escaped characters, rspfile ...