Methods and Tools for Pseudo-Boolean Problems