add dotfiles support

#492 with whitelist support
The addition of the new `extra_files` param makes it not backwards compatible. Could this be converted into a `params = {}` defaulting to `[]`?