Refactor WebService for use async pattern add base login stuff