Abstract the get_machines part. Prepare for include offline.
Added new include_offline configuration item
Support include_offline boxes.

If include_offline is enabled, we loop over all available boxes picking
those with the correct provider.

If a box has no private ip set or is offline, it is skipped (a warning is shown).
The lambda that gets the ip will return nil for the boxes.