Handle git async nature better

If the git variables aren't set, set them.  This will only
happen on the first page request; all subsequent requests
will use the cached object.