Proper conversion to/from JS when issuing queries to Cassandra

Until now, values were only sporadically converted between rb-cassandra and Cassandra types. This PR resolves this, and systematically converts values from JS to Cassandra when issuing queries, and back to JS after fetching the result rows. It also introduces conversion schemes for set values whose underlying types need conversion (such as set<varint>, set<josn>, etc.).

This PR aims at resolving [T84900](https://phabricator.wikimedia.org/T84900)
Sadly, it does not. Unfortunately, there is no way of knowing whether a row has already been converted before. While the schema does contain the conversion functions, we do not have their signatures (in/out param specs), so there does not seem to be a viable way of knowing. The only thing I can think of is to wrap the calls into try/catch blocks, but then again we cannot be sure an error has arisen because of double conversion...