Metro Bank has been fined £16.6 million by regulators for failings over money laundering controls from 2016 to 2020.