Project root cache.

Okay this should fix #448.

I also added other performance nitpicks I'm pretty sure would make it into projectile sooner or later (still working on the big TRAMP improvements).