public CommandStatus Handle(Increment cmd)
        {
            var e = new Incremented {
                Name = cmd.Name
            };

            _es.Record(e);
            return(new Success());
        }
        public Value.Result Handle(Value query)
        {
            return(new Value.Result {
                Value = _es.Replay()
                        .Where(Filter)
                        .Select(Apply).Sum()
            });


            bool Filter(Event e) =>
            e switch
            {
                Incremented i => i.Name == query.Name,
                Decremented d => d.Name == query.Name
            };
            int Apply(Event e) =>
            e switch
            {
                Incremented _ => 1,
                Decremented _ => - 1
            };
        }
    }