improving a bit on the implementation of the chain of responsibility pattern (strategies)