reorg tests to breakout proper system tests

There is not behavior changes here - just test reorgs.  This breaks
out the command tests that are actually running commands into system
tests.  This allows the unit tests to truly be unit tests.