Arguing Crypto: The Engineering Approach