Deserializando a matriz de objeto JSON com o Json.net

Eu estou tentando usar uma API que usa a estrutura de exemplo a seguir para seu json retornado

[
   {
      "customer":{
         "first_name":"Test",
         "last_name":"Account",
         "email":"test1@example.com",
         "organization":"",
         "reference":null,
         "id":3545134,
         "created_at":"2013-08-06T15:51:15-04:00",
         "updated_at":"2013-08-06T15:51:15-04:00",
         "address":"",
         "address_2":"",
         "city":"",
         "state":"",
         "zip":"",
         "country":"",
         "phone":""
      }
   },
   {
      "customer":{
         "first_name":"Test",
         "last_name":"Account2",
         "email":"test2@example.com",
         "organization":"",
         "reference":null,
         "id":3570462,
         "created_at":"2013-08-12T11:54:58-04:00",
         "updated_at":"2013-08-12T11:54:58-04:00",
         "address":"",
         "address_2":"",
         "city":"",
         "state":"",
         "zip":"",
         "country":"",
         "phone":""
      }
   }
]

JSON.net funcionaria muito bem com algo como a seguinte estrutura

{
    "customer": {
        ["field1" : "value", etc...],
        ["field1" : "value", etc...],
    }
}

Mas eu não consigo descobrir como fazer com que seja feliz com a estrutura fornecida.

O uso do JsonConvert.DeserializeObject padrão (conteúdo) resulta no número correto de Customer, mas todos os dados são nulos.

Fazendo algo uma CustomerList (abaixo) resulta em uma exceção "Não é possível desserializar a matriz atual JSON"

public class CustomerList
{
    public List<Customer> customer { get; set; }
}

Pensamentos?