OAuth login

@JeroenDeDauw could you have a look at this? Please ignore everything under `/libphutil`. It's kind of a pain but I had to check it in since they do not support composer...
Missing type hint