Approximate Algorithms and Heuristics for MAX-SAT