https://docs.python.org/2/tutorial/controlflow.html#arbitrary-argument-lists