Implements facebook authentication

I believe that with this changes the pull request could be merged. What you guys think?