Moved Query worker to own class + more fixes

exception handling/rendering improvement.  Won't attempt to write Excel
sheet if there is schema but null data (such as with divide by zero
error).  Exceptions in results will be copied to resultSet.