cleanup vagrant config

- adding .vagrant directory to .gitignore
- making cpu count and memory for the vm customizable via environment variables
  - example usage: `VM_CPUS=8 vagrant up`
  - if not specified, default values from current vagrantfile are used.
- setting ioapic in Vagrantfile, which should be required for multi-cpu virtual machines
- adding `apt-get update` as inline provisioner to avoid puppet failures on first `vagrant up` invocation
- removing invalid puppet.log_level from Vagrantfile