Added shell quoting for exec calls and assertions for options/files

This repo was initially done in a rush and missed out on good practices. This PR starts to account for the low hanging fruit.

> This PR began while refactoring a piece of twolfson.com and falling down a hole. This repo was not at fault but did not provide good feedback.

In this PR:

- Add shell quoting for image paths
    - This prevents regressions like filepaths with spaces in them
- Assert options exist
    - Since the commands currently require all parameters, make them required
- Assert `actualImage` exists as a file
    - The parameters are required but only `actualImage` needs to exist on disk

/cc @mlmorg @Raynos