Abstract GettableData
Add SettableData and make BoundStatement use it
Make BoundStatement implement GettableData too
Creates subclass for data types
Basic support for UDT
Update UDT serialization format