* Make save results asynchronous
* Prevent write share of file
* Lock objects in stages
* Create Save result objects
* refactor and write rows in batches
* CHange batchSize from test value
* Remove await in handler
* Removing the file reader as a member of the resultset
* Change Dispose to wait for save
* Change concurrentBag
* PascalCase variables
* Modify function signature and tests
* Safe file methods
* refactor ResultSets to Ilist and remove ToList
* Change dictionary key and prevent add to saveTasks during dispose
* Simplify row concatenation
* Fix prevent add
* Fix prevent add
* Add methods to expose saveTasks and isBeingDisposed
* Code changes to save results as csv
* changes to save resultset as csv
* removed csvHelper
* Retrieve right resultSet after batch execution]
* code clean up
* encode column names and use string.Join
* code review changes - property fix and rowBuilder removal
* changes to fix execution tests
* Code clean up
* Code clean up
* Test save as CSV
* Fix tests for Mac/Linux
* Add doc comment
* Add doc comments
* Delete file if exception occurs