Change 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.

closes #479
closes #476
closes #473
closes #469
Nothing in 1.x uses actual factories(seperate files) so i didn't want to start now.