Command pattern, template pattern, calculator problem completed