Smart Contracts in the 5G Roaming Architecture: The Fusion of Blockchain with 5G Networks