Improve handling of home path

This is not quite ready to go in, but I want to get initial discussion.

The main changes are:
- Make %HOME% be the root instead of the site root to match Azure behavior (but don't do it in .ssh compat scenarios)
- Make Kudu use d:\home (or c:\home) as the root when available
- Refactor some logic to make the Ninject and kudu.exe code paths more similar (though more could be done here)