Fix compilation on VS2013
Merge pull request #671 from sgraham/compile-vs2013

Fix compilation on VS2013
add deps_prefix for localized /showIncludes' output parsing
Merge pull request #665 from syntheticpp/localized-showinclude

add deps_prefix for localized /showIncludes' output parsing
Minor style fixes. No functionality change.
Merge pull request #674 from nico/style

Minor style fixes. No functionality change.
Wrap to 79 colums. No functionality change.
Merge pull request #682 from nico/pep8

Wrap to 79 colums. No functionality change.
Add a test that shows that there is a single global namespace for rules.
Merge pull request #683 from nico/ruletest

Add a test that shows that there is a single global namespace for rules.
Fix up platform_helper for MSVC, with Python 2.6.8 the arguments have to be in a list, not space separated (unless you set Shell to true)
Merge pull request #688 from ndmitchell/master

Fix up platform_helper for MSVC
fixed platform_helper.py msvc_needs_fs test
Merge pull request #691 from TheOneRing/fix-msvc13

fixed platform_helper.py msvc_needs_fs test for python 3
Fix additional range in character class.

The range was added in 7ab6dcbdb6447861eefafc47fc3e10f3273cede2, but that
change only tried to add ! to the character class. Fix by moving '-' to the end
of the class.

Fixes #694.
Merge pull request #695 from nico/norange

Fix additional range in character class.
Remove dead entries in .ninja_log and .ninja_deps while recompacting.

For .ninja_deps, remove objects that have no in-edges or whose in-edges
do not have a "deps" attribute. (This matches the behaviour of `-t
deps`).

BuildLog doesn't know about state, so let its recompact method take
delegate that decides is a path is life or not, and implement it in
NinjaMain.
Make tests compile (one fails atm).
Fix DepsLogTest.Recompact by making sure outputs aren't garbag-collected.
Add a test for collection of dead deps entries.