Preql

NOT ready to merge.
The meaning of `comp_row` is not obvious to me. Also fyi python syntax allows such brevity as

    return [
        val if ts else cond_val
        for ts, val, cond_val in izip(to_sample, sample, conditioning_row)
    ]