BMW is revving its electric engines and gaining ground on Tesla