Text this: Dual-Feasible Functions for Integer Programming and Combinatorial Optimization