[CHEF-4248] expose scm timeout attribute

http://tickets.opscode.com/browse/CHEF-4248

Add timeout to scm resource. Extend Git and Subversion providers to accept timeout attribute and pass to ShellOut or Command, respectively.