Spa connect interface

This PR modify the SPA interface for the credentials, connect, disconnect and reauth-needed scenarios.

- `SPA#autoconnect` disappear
- `SPA#connect` now takes an arbitrary `credentials` object
- `SPA` now triggers `reauth-needed` when the server does not authorize long polling and `disconnected` when there is a network problem.

I still need to check a few things before landing that but it should be ready for review.