provides a command pattern library