IGearClient.add accepts environment variables - fixes 568

Fixes #568 
The environment that we create is stored as a file and can then be shared with other units. But if we're never going to share them, they should probably be cleaned up when we remove a unit.