Add transforms support in preql

This PR's goal is to allow preql methods to use both basic and fluent features (post and pre transform, resp). The biggest change is that `conditioning_row` can now be either a list (WRT the schema `preql.feature_names`) or a dict; if it is a dict, the keys can be either fluent or basic features.
The transforms are now built into `PreQL.encode_row` and `.decode_row`, with the per-feature encoding being done by the renamed helpers `._encode_row` and `._decode_row`.