Use TypeError for bad prepared stmt param types
More consistent type checking for query params
Integration test for empty strings and Nones