kill unnecessary lifetime annotations

This commit removes lifetime annotations
that are now automatically inferred by
the compiler.
auto merge of #236 : cburgdorf/cargo/kill_lifetimes, r=alexcrichton

This commit removes lifetime annotations
that are now automatically inferred by
the compiler.
Simplify the ProcessBuilder struct

This changes many bounds to ToCStr to stay in line with the since-introduced
Command structure. The builder remains separate of command to have control over
executing and Show.

Path-related methods have been removed and env-initialization/management are
left to Command, ProcessBuilder only keeps track of the delta.
Move git macros to using `arg()`
Use Path::display().to_string() less often

Unfortunately this cannot yet have a test for it as rustc itself does not work
if it is run on non-utf8 paths.