City bus network based on distributed charging stations and on-board energy storage