Non-trivial changes and bug fixes for the Ansible provisioner

:construction: **NOT READY FOR MERGE** :construction_worker: *(I'll try to push more stuff to this branch within the next days)*

As discussed with @mitchellh, Vagrant 1.7 will introduce some bug fixes and "little breaking changes" that can affect following user profiles:
 * Vagrant is installed on a [rather old RedHat-family host](http://docs.ansible.com/faq.html#how-do-i-get-ansible-to-reuse-connections-enable-kerberized-ssh-or-have-ansible-pay-attention-to-my-local-ssh-config-file) (like RHEL 6, CentOS 6, SLES 10 or SLES 11)
 * `ansible.raw_arguments` provisioner option rashly contains settings that overlap with other options of the Ansible provisioner.

//cc @sethvargo 

Additional Notes: 
* this pull request is a prerequisite to the finalization of (too long waited) #2103
* Wobbly RSpec style is kept as is, and will be improved/refactored via #2103
That's good that you comment that point. I propose to keep `unless` for now, as same style is used several times in this provisioner, but I'll change them all when refactoring in the finalization of #2103. Hope it's okay for you so.