Cache some stuff for longer and pull some logic into querysets.