Improve TRAMP performance

**DON'T MERGE THIS YET**

The idea is to make a mini code review here. See #234 for more explanations.

Basically, delay projectile directory walking until absolutely necessary when over TRAMP. Performance over TRAMP is now instantaneous when you open files & friends, yet projectile still works if you press key combos like <kbd>C-c p f</kbd>.

I tried not to tie the implementation to TRAMP, that way people can tweak it for any conditions they can think of.

Things to be discussed:

* Variable names? Maybe `projectile-lazy-when`, `projectile-is-lazy-p` would be better names?
* What can go wrong here?
What do you mean by "temporary rebinding it"? All I know is that without this line the test 26 fails...

I just figured how to run ert-test from within emacs so I'm able to debug it... until now I just type `make test` :) I'll try to understand what's going on