I'm trying to create a contract that behaves differently based on the user's selection. I, however, have no idea how to let the user "select" the option. Currently I have a basic payable function that does the basic logic, but this logic has 2 important variables which I'd like if the user could change. What's the best approach to accomplish this? I know I can create a function with 2 inputs that will modify this behavior, but how would people use this function at all? No wallet (except MyEtherWallet) supports functions and even with MEW you need to know ABI. Is there a workaround or something?