Separated the puppet install script and pre_setup script that installs puppet modules and runs puppet
Improved performance in pre_setup by skipping puppet module install if nothing has changed
Only use vagrant-cachier if it's actually installed, to avoid errors when it isn't