separate Runner from Context
emove commented code
Merge branch 'master' of https://github.com/juju/juju into uniter-context-separate-runner
address review
Merge pull request #967 from fwereade/uniter-context-separate-runner

separate Runner from Context

This is again mostly code moves, and it's definitely not perfect yet, but it's worth a review; might manage a fix-it-then-ship-it. Notable features:

  * funcs about constructing the command moved to args.go
  * funcs about constructing the environment moved to env.go
  * funcs about actually executing commands in a context moved to runner.go
  * most tests about the environment no longer invoke external commands
  * many tests are just as stupid as they were to begin with, it's late and this CL is big enough already

one thing I've just realised is definitely missing is an explicit Runner-level test for actually running a jujuc server. Still worth a review for overall sanity please :).