Chess Training Software - Request Features


Love CPT!!! But Stefan is moving it away from a "Position" training and focusing nearly exclusively on openings whereas my vision for this is focusing on specific positions as a training chunk. While my vision for this program could be used as a system to train openings it would in no way be optimal just as Stafan's CPT is not designed to study tactical or positional "exercises."
Me and a few buddies are working on developing a chess software library that we are going to distribute as free and open source. My current plan is two distinct pieces of software.
1. A PGN viewer for use on blogs and web sites.
2. A chess position training system that allows you to build your own training package. I would like to see this with some advanced reporting such as being able to tell which themes you are having issues with, if you have a problem calculating variations over a certain length, etc.
So my question is, if you could build your own software based traning system what features would you like it to have?