Hmm. I really don't like using `this` outside of the constructor+prototype pattern if I can help it. How about an aliased function?
```javascript
function getCwd(cwd) {
    return cwd || process.cwd(); 
}

exports.getCwd = getCwd;
```
That way I can just use
```javascript
var directory = getCwd(cwd);
```
This is sort of a legacy from previous commits in this pull request. If the test for this function is not too important for you, then `exports.getCwd` can be dropped altogether. Another option that I favour for larger objects with lots of private functions would be to turn `cli-config.js` into a directory, and move private functions to their own module within the directory. This allows us to hide the function with respect to the module API, but it can still be required in by the testing suite.