Add a cached score property to promotable items (and more tests)