Add a Command pattern and a unit test for it.