Make ChannelAction and Validator functional interfaces, add composition to validators, refactor the validator composition in GParserExecutor.