Resolving #2194 (Ansible buffering output if run as subprocess)

Adding `PYTHONUNBUFFERED` environment variable to Ansible provisioner's execution environment. This ensures that we receive output on a task-by-task basis rather than at the end of provisioning (or sometimes at seemingly random intervals during provisioning).

This solution was discovered from the [Ansible Google group](https://groups.google.com/forum/#!topic/ansible-project/aXutTmXAbR0).

I think this should be the default behaviour as this allows us to easily identify bottlenecks in Ansible provisioning and allows us to know how far through provisioning Ansible is.