As it says on the tin... Leave the source argument as an argument, probably. The rest of the arguments should be defined as options. Will need updating the unit tests.