some changes and basic benchmark against google cache.