[#57338824] Update VagrantProvider to be reproducable for AWSProvider

@axelstudios I updated the layout of VagrantProvider into something that
you can copy into AWSProvider *or* extract into a baseclass. I'm not
sure which option would be the best.

For each call that requires a QProcess call a function was created:

    QProcess *makeCheckServiceProcess() const;
    QProcess *makeStartServerProcess() const;
    QProcess *makeStartWorkerProcess() const;
    QProcess *makeCheckServerRunningProcess() const;
    QProcess *makeCheckWorkerRunningProcess() const;
    QProcess *makeStopServerProcess() const;
    QProcess *makeStopWorkerProcess() const;
    QProcess *makeCheckTerminateProcess() const;

The developer doesn't need to be concerned about whether or not the
QProcess is being used in a synchronous or asynchronous way. Simply
create the QProcess that needs to be executed to complete the task.

A new class was created, `ProcessResults`, which contains the results of a
QProcess execution. The function `handleProcessCompleted` extracts the
results from the QProcess and queues the QProcess for deletion.

Furthermore, functions corresponding to the above "make.*Process"
methods were created to parse the results of process execution. For each
of the following:

    bool parseServiceAvailableResults(const ProcessResults &);
    bool parseServerStartedResults(const ProcessResults &);
    bool parseWorkerStartedResults(const ProcessResults &);
    bool parseCheckServerRunningResults(const ProcessResults &);
    bool parseCheckWorkerRunningResults(const ProcessResults &);
    bool parseServerStoppedResults(const ProcessResults &);
    bool parseWorkerStoppedResults(const ProcessResults &);
    bool parseCheckTerminatedResults(const ProcessResults &);

Parse the results of the process execution and return the appropriate
value.

All of this assumes that the logic that is needed for AWSProvider is
very similar to the logic needed for VagrantProvider.

But even if that's not the case, it should give you a good starting
point.
Merge branch 'AWSProvider' of github.com:NREL/OpenStudio into AWSProvider