A CSP implementation from the paper "Constraint Satifaction Solver in a weekend"