finish off specs, rearrange a few functions, add resultProcessor opts for loading and saving