Oil giant BP is a buy as fundamentals remain strong, Citi says in upgrade