Break out the source list items into a distinct datasource protocol.
Correctly handle cases where a radar page is returned on login, but login failed.

This will pop the login web UI, and then trigger a 'login failed'
message if that window is closed without login succeeding.
Begin wiring up proper data source support.