Encontrando duplicados en una lista de listas.

Estoy usando Python 2.7 y estoy tratando de desduplicar una lista de listas y fusionar los valores de los duplicados.

Ahora mismo tengo:

original_list = [['a', 1], ['b', 1], ['a', 1], ['b', 1], ['b', 2], ['c', 2], ['b', 3]]

Quiero hacer coincidir el primer elemento de cada lista anidada y luego agregar los valores del segundo elemento. Quiero terminar con esto (el orden de la lista final no importa):

ideal_output = [['a', 2], ['b', 7], ['c', 2]]

Hasta ahora tengo algo de código que me encontrará los valores duplicados según el primer elemento de cada lista anidada:

for item in original_list:
    matches = -1
    for x in original_list:
        if (item[0] == x[0]):
            matches += 1
    if matches >= 1: 
        if item[0] not in duplicates_list:
            duplicates_list.append(item[0])

Desde aquí necesito buscar todos los elementos duplicados_list que están en original_list y sumar los valores, pero no estoy seguro de cuál es la mejor manera de hacerlo.

Respuestas a la pregunta(7)

Su respuesta a la pregunta