This patch includes following changes:
- Fix comments and code style
- Add new tests for many commands
- Improve existing tests
- Merge MiProgramArgsTestCase and MiExecTestCase
- Improve runCmd of MiTestCaseBase: add exactly option
- Improve test example (make it more complicated)
All tests pass on OS X.
Some of them are skipped. Soon I'll submit patches for them (they have been made already, but I can't submit them because not all my patches were accepted).
Some of tests are skipped because they require following patches: