Add ability to process sub frames in a thread

* add async checkbox
* if set, process subframes in threads
Merge branch 'add-async-processing'
remove sync checkbox - causes heroku to run out of memory
Add sinatra streaming

* fork the image generation process
* poll checking for image
* use socket to prevent timeouts
try sending headers
another try - dont flush
another try - add chunked encoding
add flush back in
add flush back in
add flush back in
Add timed fetch

* instead of waiting for the server, just poll with js
Merge branch 'js-poll'