provide an abstraction for calculating percent change, and rank