github registration listener refactoring + tests

As promised in #286 this PR moves registration listener from closure in `User\Module` to separate listener class. There is both unit and integration test case to assure that listener is attached and `registerViaProvider` event triggered in `ScnSocialAuth` module.

I still have to find a way how to update existing local user profile from actual GitHub data after login.

@Ocramius could you please provide code review?
Probably doesn't need to be `protected`, given that the class has been declared as `final`.