Hi Adam,
OK, I agree that having those concepts could indeed allow those strategies to be more generic, and would bring more possibilities. We can go that way then. However I'd advise to concentrate on one concept at a time and get it right, rather than doing all 3 at the same time. Not to mention it will make the technical discussions much easier. Since vector is something that was discussed in the past and expressed as a need by users, I'd start with that.