Automating Machine-to-Machine Payments via Self-Executing Agreements