/// <summary>
        /// Attempts to obtain a new login from the given parameters. If possible it also sets a list of earlier readings, but doesn't crash if it wasn't possible
        /// </summary>
        /// <param name="customerId">Account number</param>
        /// <param name="password">Password</param>
        /// <returns>Tuple of success and security key</returns>
        public async Task <(bool, string)> NewLoginAsync(string customerId, string password)
        {
            return(await Task.Run(async() =>
            {
                var key = SHA.SHA1Encrypt(string.Format("{0}{1}", customerId, _config.ApiKey));

                var canConnect = await _connectService.CanConnect();

                if (canConnect)
                {
                    //TODO: change to something more meaningful
                    (bool, string)result = (false, "Not ok");

                    var response = _client.newLogin(new NewLoginRequest()
                    {
                        NewLogin = new NewLogin {
                            WebLogin = customerId, PassWord = password, EncryptedKey = key
                        }
                    });

                    result = response.ErrorCode.Equals("") ? (true, response.ResponseMessage) : (false, response.ResponseCode);

                    if (result.Item1)
                    {
                        _config.Context.securityKey = result.Item2;
                        _config.CustomerId = customerId;
                        _config.MeterReadings = await GetMeterReadings();
                    }

                    return result;
                }
                //TODO: Inconsistent with danish/english
                return (false, "Kunne ikke få forbindelse");
            }));
        }