add some network stuff an a stubbed out login dialog
refactor network code, add generic api request method
attempt a login