Fix some caching issues on the front page

The return value from get_recent_updates() was too big for memcached due
to all the attached objects, so the cache never actually worked. This
sucks, because we ended up doing all the work in this function and most
of the time we didn't use it because template fragment caching kicked
in.

Remove the cache_function decorator from this method, and instead
implement delayed calling of the function so we don't compute values we
aren't going to use. Template fragment caching will help us in most
cases.

Signed-off-by: Dan McGee <dan@archlinux.org>