creating seperate classes to handle API, designing login