Append new cache items at the start of the collision list

The idea is that more recently-added cache items are more likely to
get hits.

Signed-off-by: wm4 <wm4@nowhere>
Attempt to make code more readable

No more double pointer dereferencing.