Refactoring: SafeDeleteCommand into new command execution architecture

Added: SafeDeleteCommand and MakeUpperCaseCommand tests