Bangladesh beat Sri Lanka by 2 wickets, to meet India in final