Make `choices` a list and `default` a parameter with a default value. I'm not a huge fan of `*foo` and `**foo` in Python.

Also, add some docs to the function that explain how it should be used; include an example call.