API refactoring

According to musta-gandhi: "less is more"

client initiates go routine to handle reconnections and auth.