Track just the latest fingerprints

Each feed check, update self.fingerprints to be a set of all
fingerprints in the feed.

I think the previous way I was doing it was a holdover from how I did it
in riverpy which just didn't make much sense here.

Next up is to trim self.timestamps so it's never longer than
self.window.
Only keep Feed.window number of timestamps

No real need to keep 1000 when all we really need is the window size.
Order index and archive pages differently

Index page is sorted according to the update's decay score while the
updates on archive pages are sorted by strict reverse chronological
order.