Barcelona buys BYD buses