this allows for sending exception data if there's a compile error

Previously, if there was a compile time error the handler would try to emit run_status.all_resources.length which wasn't yet available, so you'd get an "undefined method 'length'" error and nothing would be emitted to datadog.

Now it has better error checking and additionally sends run_status.formatted_exception and run_status.backtrace in the event of a compile error - which allows you to actually see in datadog console what the compile issue was.