it('should invoke registered commands and execute one that can handle the request', () => {
   let chain = new CommandChain();
   let result = chain.add(new Command1()).add(new Command2()).execute('string');
   expect(result).to.equal('string=string');
   result = chain.execute(true);
   expect(result).to.equal('boolean=true');
 });
 expect(() => {
   let chain = new CommandChain();
   chain.add(new Command1()).execute(true);
 }).to.throw(Error);