core: WaitForCommunicator - more robust wait for boot

This is a new built-in middleware that is more robust for
waiting for boots. The "max_tries" configuration is now gone, it is
timeout based. Future commits will make this even better as the
SSH communicator will implement the new "wait_for_ready" in a better
way.
Update CHANGELOG
Next version will be 1.3.0, update cHANGELOG
core: config.vm.graceful_halt_timeout to specify graceful halt timeout