PDP: A General Neural Framework for Learning Constraint Satisfaction Solvers