Add ERC20 permit() function

Discussion for adding permit to ERC20: