Draft: Merge current Preprocessing Rewrite
Summary
This MR introduces the following changes
- Merge the current status of the preprocessing rewrite into master
Relates to the following issues
- Closes #232 (closed) #235 (closed) #237 (closed)
- Touches #60 (closed) #152 (closed) #233 (closed) #234 (closed)