1. You can use any user you'd like as long as that user is able to use sudo. Most Roles in provy already use sudo.
2. The most efficient way would be developing a new Role. If you do, please report back to us using a pull request or a ticket so we can add your role to the codebase.
3. The provyfile that is used to provision your servers is stored in the same repository as your app, so it is source-controlled already. Not sure what you meant by the as-is configuration files. I don't leave anything out of git, though.
Cheers,