Eliminate looping through chain of results in performance critical codepaths.

This patch eliminates O(n^2) behavior on the number of chained results in
SC_execute. This makes it feasible to deal with large parameter arrays, for
example.

The idea is to track the owner statement of each result object, so that when
we need to check if a result object is already in the chain of results of a
statement, we just need to look at the owner field, not loop through the
whole chain. Also, keep track of the last result in the chain in
StatementClass, so that we don't need to iterate through it when appending
to the end.
Fix column_size=5 varchar field in BoolsAsChar=1 mode.

If a query was sent to the server using the Parse command, we returned the
dummy QResult for the Parse, with 0 rows, to the caller of SQLExecute.
Fix by clearing out the result set just before executing.