New redirect strategy

I change the way the redirect strategy works.
The redirects from authenticate/logout actions are now callbacks.
This way the user can overwrite the default callback and decide **exactly** what to should happen.

ping @Ocramius

closes #479
closes #476
closes #473
closes #469
Now that we have this redirect callback, it's not needed, but it would be BC to remove.
Now that i think about it, this PR is against 2.x branch, so i could probably remove.